Claus Ibsen created CAMEL-25553:
-----------------------------------
Summary: camel-aws-secrets-manager, camel-azure-key-vault,
camel-google-secret-manager, camel-ibm-secrets-manager, camel-cyberark-vault -
properties functions are not thread safe
Key: CAMEL-25553
URL: https://issues.apache.org/jira/browse/CAMEL-25553
Project: Camel
Issue Type: Bug
Components: camel-aws2, camel-azure, camel-google
Reporter: Claus Ibsen
Assignee: Claus Ibsen
Fix For: 4.23.0
The vault properties functions are single instances shared by all threads, as
properties can be resolved at runtime from many threads (for example
${properties:aws:...}).
* They keep the names of the resolved secrets in a plain HashSet that every
lookup adds to, and the secret refresh tasks iterate it from another thread
(risk of ConcurrentModificationException and lost entries).
* camel-ibm-secrets-manager IBMSecretsManagerPropertiesFunction keeps the
secret group of a lookup in an instance field, so concurrent lookups can read
the secret from another group, and a lookup without a group reuses the group of
the previous lookup.
camel-hashicorp-vault has the same issues; see CAMEL-25518 and the related
ticket for its engine field.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)