Chapter 26. AWS IAM Component Available as of Camel version 2.23 The KMS component supports create, run, start, stop and terminate AWS IAM instances. Prerequisites You must have a valid Amazon Web Services developer account, and be signed up to use Amazon IAM. More information are available at Amazon IAM . 26.1. URI Format aws-kms://label[?options] You can append query options to the URI in the following format, ?options=value&option2=value&... 26.2. URI Options The AWS IAM component supports 5 options, which are listed below. Name Description Default Type configuration (advanced) The AWS IAM default configuration IAMConfiguration accessKey (producer) Amazon AWS Access Key String secretKey (producer) Amazon AWS Secret Key String region (producer) The region in which IAM client needs to work String resolveProperty Placeholders (advanced) Whether the component should resolve property placeholders on itself when starting. Only properties which are of String type can use property placeholders. true boolean The AWS IAM endpoint is configured using URI syntax: with the following path and query parameters: 26.2.1. Path Parameters (1 parameters): Name Description Default Type label Required Logical name String 26.2.2. Query Parameters (8 parameters): Name Description Default Type accessKey (producer) Amazon AWS Access Key String iamClient (producer) To use a existing configured AWS IAM as client AmazonIdentity ManagementClient operation (producer) Required The operation to perform IAMOperations proxyHost (producer) To define a proxy host when instantiating the KMS client String proxyPort (producer) To define a proxy port when instantiating the KMS client Integer region (producer) The region in which KMS client needs to work String secretKey (producer) Amazon AWS Secret Key String synchronous (advanced) Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported). false boolean 26.3. Spring Boot Auto-Configuration The component supports 12 options, which are listed below. Name Description Default Type camel.component.aws-iam.access-key Amazon AWS Access Key String camel.component.aws-iam.configuration.access-key Amazon AWS Access Key String camel.component.aws-iam.configuration.iam-client To use a existing configured AWS IAM as client AmazonIdentity ManagementClient camel.component.aws-iam.configuration.operation The operation to perform IAMOperations camel.component.aws-iam.configuration.proxy-host To define a proxy host when instantiating the KMS client String camel.component.aws-iam.configuration.proxy-port To define a proxy port when instantiating the KMS client Integer camel.component.aws-iam.configuration.region The region in which KMS client needs to work String camel.component.aws-iam.configuration.secret-key Amazon AWS Secret Key String camel.component.aws-iam.enabled Whether to enable auto configuration of the aws-iam component. This is enabled by default. Boolean camel.component.aws-iam.region The region in which IAM client needs to work String camel.component.aws-iam.resolve-property-placeholders Whether the component should resolve property placeholders on itself when starting. Only properties which are of String type can use property placeholders. true Boolean camel.component.aws-iam.secret-key Amazon AWS Secret Key String Required IAM component options You have to provide the amazonKmsClient in the Registry or your accessKey and secretKey to access the Amazon IAM service. 26.4. Usage 26.4.1. Message headers evaluated by the IAM producer Header Type Description CamelAwsIAMOperation String The operation we want to perform CamelAwsIAMUsername String The username for the user you want to manage CamelAwsIAMAccessKeyID String The accessKey you want to manage CamelAwsIAMAccessKeyStatus String The Status of the AccessKey you want to set, possible value are active and inactive 26.4.2. IAM Producer operations Camel-AWS IAM component provides the following operation on the producer side: listAccessKeys createUser deleteUser listUsers getUser createAccessKey deleteAccessKey updateAccessKey Dependencies Maven users will need to add the following dependency to their pom.xml. pom.xml <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-aws</artifactId> <version>USD{camel-version}</version> </dependency> where USD{camel-version } must be replaced by the actual version of Camel (2.16 or higher). 26.5. See Also Configuring Camel Component Endpoint Getting Started AWS Component

Commands:
aws-kms://label[?options]
aws-iam:label
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-aws</artifactId> <version>USD{camel-version}</version> </dependency>