[ 
https://issues.apache.org/jira/browse/CAMEL-25773?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Claus Ibsen updated CAMEL-25773:
--------------------------------
    Fix Version/s: 4.24.0

> camel-aws-secrets-manager - the CloudTrail refresh task reads lastTime for 
> every lookup page, so a shutdown during a check sends the next page without a 
> start time
> -------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-25773
>                 URL: https://issues.apache.org/jira/browse/CAMEL-25773
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-aws2
>            Reporter: shashank
>            Assignee: shashank
>            Priority: Minor
>             Fix For: 4.24.0
>
>
> Follow-up to the review of CAMEL-25729 (apache/camel#28036, merged), two 
> points raised by gnodet-bot on the PR.
> {{CloudTrailReloadTriggerTask}} reads the volatile field {{lastTime}} for 
> every {{LookupEvents}} request. {{doShutdown}} sets {{lastTime}} to null, so 
> a shutdown while a check reads its pages sends the next page without a start 
> time (the whole event history of the last 90 days), and the two lookups of 
> one check ({{PutSecretValue}} and {{UpdateSecret}}) can use different start 
> times.
> The event loop also checks the event source and the event name of every 
> event. The lookups are filtered by event name, so the event name check is 
> always true. The event source check is not: event names are not unique across 
> AWS services (as noted on apache/camel#28036), so it stays.
> *Change*: the check reads {{lastTime}} once and passes it to both lookups, so 
> every page of both lookups uses the same start time. The always-true event 
> name check is removed from the CloudTrail path and the event source check is 
> kept; the SQS notification path, whose messages are not filtered, keeps both. 
> Otherwise the behaviour is unchanged.
> *Tests*: new 
> {{CloudTrailReloadTriggerTaskLookupTest.everyPageOfBothLookupsOfOneCheckUsesTheSameStartTime}}:
>  the fake {{LookupEvents}} clears {{lastTime}} while the first page is read, 
> as {{doShutdown}} does, and the test checks that the three requests of the 
> check (two pages of {{PutSecretValue}}, one of {{UpdateSecret}}) use the 
> start time of the check. It fails without the change: {{expected: 
> <2026-10-17T10:00:00Z> but was: <null>}} (the second page is sent without a 
> start time). New {{updateEventOfAnotherServiceIsIgnored}}: an 
> {{UpdateSecret}} event of another event source is not taken as an update of 
> the secret (passes on main too; it guards the kept check). 
> camel-aws-secrets-manager unit tests: 12 run, 0 failures.
> _Filed with Claude Code on behalf of allthingssecurity._



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to