Duplicate detection isn't that hard:
- Unique value in the request. Multiple options exist:
- business identifier such as purchase order number
- hash of the input message or
- technical identifier such as WS-Addressing MessageID
- Database table with unique constraint to manage the identifiers.
- Cleanup job to remove old entries from the above database table.
Integration solutions often need to maintain information about messages anyway. For
message monitoring, message archiving or non-repeduation (keep copy of signed messages). Duplicate detection can also be combined with protection against replay attacks (even required by the core WS-Security spec).
Mule comes with an Idempotent Receiver that provides duplicate detection.
Still, why other ESB's don't come with duplicate detection mechanisms is a mystery to me!
1 comment:
Hi great rreading your blog
Post a Comment