Amazon Secrets Manager Properties Provider の例

次の例を使用して、Amazon Secrets Manager クラウドサービスからシークレットを取得するように Amazon Secrets Manager Properties Provider を設定できます。

AWS 接続種別を設定する

Anypoint Connector は、設定で Amazon Secrets Manager Properties Provider を使用できます。次の例は、Anypoint Studio の ​[AWS Secrets Manager Properties Override Config (AWS Secrets Manager Properties の上書き設定)]​ で AWS 接続種別を設定する方法を示しています。

  1. Studio で、​[Global Elements (グローバル要素)]​ タブに移動します。

  2. [Create (作成)]​ をクリックします。

  3. [Choose Global Type (グローバル種別の選択)]​ ウィンドウで、「​AWS Secrets Manager​」と入力します。

  4. [AWS Secrets Manager Properties Override Config (AWS Secrets Manager Properties の上書き設定)]​ を選択します。

  5. [OK]​ をクリックします。

  6. [Global Element Properties (グローバル要素のプロパティ)]​ ウィンドウで、次の項目を設定できます。

名前 説明 デフォルト値 必須

AWS Secrets Manager Region (AWS Secrets Manager リージョン)

String (文字列)

AWS Secrets Manager リージョン (​us-east-2​ など)。

x

AWS アクセスキー

String (文字列)

AWS アクセスキー ID。

AWS Secret Key (AWS シークレットキー)

String (文字列)

AWS シークレットキー ID。

Role ARN (ロール ARN)

String (文字列)

クロスアカウントアクセスを取得するためのロールを一意に識別します。

Anypoint Studio の [Global Element Properties (グローバル要素のプロパティ)] ウィンドウの Amazon Secrets Manager Properties Provider の例

設定 XML​ エディターでは、設定は次のように記述されます。

<aws-secrets-manager-properties-override:config name="AWS_Secrets_Manager_Properties_Override_Config" doc:name="AWS Secrets Manager Properties Override Config" >
		<aws-secrets-manager-properties-override:basic-connection region="us-east-1" />
		<aws-secrets-manager-properties-override:role-connection roleARN="arn:aws:iam::480410955647:role/AmazonSSMRoleForAutomationAssumeQuickSetup" />
	</aws-secrets-manager-properties-override:config>

ログイン情報を指定しない場合、デフォルトの AWS 接続は、 「デフォルトの認証情報プロバイダーチェーン - AWS SDK for Java 2.x」​に従います。

JSON 文字列を使用して AWS Secrets Manager を設定する

次の例は、シークレットマネージャーキーを作成する JSON 文字列を使用して、Amazon S3 Connector の Amazon Secrets Manager Properties Provider を設定する方法を示しています。

accessKey​ と ​secretKey​ が含まれる JSON ファイルに基づいて、以下の作業を行います。

aws secretsmanager create-secret --name aws-credentials   --secret-string '{"accessKey":"ACCESSKEY", "secretKey":"SECRET"}'
  1. [Amazon S3 Configuration (Amazon S3 設定)]​ グローバル要素プロパティウィンドウで、​[fx]​ を選択して式の値を設定します。

  2. [Access Key (アクセスキー)]​ を ​${aws-secrets::aws-credentials}.accessKey​ に設定します。

  3. [Secret Key (シークレットキー)]​ を ​${aws-secrets::aws-credentials}.secretKey​ に設定します。

JSON 式を使用した Amazon S3 Connector の Amazon Secrets Manager Properties Provider 設定の例

設定 XML​ エディターでは、設定は次のように記述されます。

<s3:config name="Amazon_S3_Configuration" doc:name="Amazon S3 Configuration">
		<s3:connection accessKey="#[${aws-secrets::aws-credentials}.accessKey]" secretKey="#[${aws-secrets::aws-credentials}.secretKey]" />
	</s3:config>

AWS Secrets Manager を文字列として設定する

次の例は、Amazon S3 Connector の文字列としてシークレットマネージャーキーを設定する方法を示しています。

次の文字列に基づいて、以下の作業を行います。

aws secretsmanager create-secret --name accessKey  --secret-string "ACCESSKEY"
aws secretsmanager create-secret --name secretKey  --secret-string "SECRET"

[Amazon S3 Configuration (Amazon S3 設定)]​ グローバル要素プロパティウィンドウで、

  1. [Access Key (アクセスキー)]​ を ​${aws-secrets::accessKey}​ に設定します。

  2. [Secret Key (シークレットキー)]​ を ​${aws-secrets::secretKey}​ に設定します。

文字列値を使用した Amazon S3 Connector の Amazon Secrets Manager Properties Provider 設定の例

設定 XML​ エディターでは、設定は次のように記述されます。

<s3:config name="Amazon_S3_Configuration" doc:name="Amazon S3 Configuration" >
		<s3:connection accessKey="${aws-secrets::accessKey}" secretKey="${aws-secrets::secretKey}" />
	</s3:config>

シークレットマネージャーに保存される値には ​$​ 特殊文字を使用しないでください。​$​ 文字を使用する必要がある場合は、変数をリテラルモードで使用して、それを文字列として扱います。その後、値全体を JSON に変換し、必要な情報を抽出できます。