[ 
https://issues.apache.org/jira/browse/CAMEL-25578?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18127065#comment-18127065
 ] 

Claus Ibsen commented on CAMEL-25578:
-------------------------------------

Backported to camel-4.18.x in https://github.com/apache/camel/pull/27811. The 
camel-4.22.x backport (https://github.com/apache/camel/pull/27804) is still 
open.

_Claude Code on behalf of 

> camel-lra - verify participant callbacks with an optional shared secret
> -----------------------------------------------------------------------
>
>                 Key: CAMEL-25578
>                 URL: https://issues.apache.org/jira/browse/CAMEL-25578
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-lra
>            Reporter: Andrea Cosentino
>            Assignee: Andrea Cosentino
>            Priority: Major
>             Fix For: 4.18.6, 4.22.2, 4.24.0
>
>
> The LRA participant routes ({{PUT <localParticipantContextPath>/compensate}} 
> and {{/complete}}) take the saga step endpoint and the saga options from the 
> callback URL enlisted with the LRA coordinator.
> Add an optional shared secret to the LRA saga service so the participant can 
> sign the callback URLs it enlists and verify them when the coordinator calls 
> back:
> * new {{LRASagaService}} option, also settable as {{camel.lra.callbackSecret}}
> * when set: the compensate/complete URLs carry an HMAC-SHA256 signature over 
> the callback type and all query parameters; callbacks with a missing or 
> mismatching signature get HTTP 403, and only the signed values are passed on 
> to the step endpoint
> * when not set: behaviour unchanged, plus a startup warning
> * docs: the Saga EIP / LRA pages describe the participant endpoints, that 
> they are meant to be reachable by the coordinator, and the new option
> Follow-up: expose the option in {{camel-lra-starter}} (camel-spring-boot).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to