オンプレミスエージェント向けAWS Secrets Managerの構成

このページは機械翻訳により提供されています。翻訳内容と英語版に相違がある場合は、英語版が優先されます。

Amazon Web Services (AWS) Secrets Managerは、クラウド内でシークレットを安全に保存し、アクセスできるサービスです。 Workatoは、オンプレミスシステムのシークレットを管理するためにAWS Secrets Managerをサポートしています。

OPAコネクションタイプのAWS Secrets Managerサポート

AWS Secrets Managerはクラウドプロファイルコネクションプロファイルの両方をサポートしていますが、AWS Secrets Managerへの接続と使用のプロセスはそれぞれ異なります。以下の表に概要を示します:

オンプレミスシステムのコネクションタイプAWS Secrets ManagerのセットアップAWS Secrets Managerのシークレット構文
クラウドプロファイル推奨WorkatoのAWS Secrets Manager設定{{workato:sm:<key_name>:<secret_ARN>}}
コネクションプロファイルconfig.ymlsecretsセクション{ secret: '<secret_name>' }

シークレットがSecrets Managerに保存されているオンプレミスシステムのコネクションタイプに応じて、AWS Secrets Managerを構成して使用します:

コネクションタイプ

  • クラウドプロファイルはWorkatoで直接セットアップされるため、オンプレミスエージェントがインストールされているマシンにアクセスする必要はありません。
  • コネクションプロファイルは、オンプレミスエージェントがインストールされているマシン上のconfig.ymlファイルで手動でセットアップします。

クラウドプロファイルでのAWS Secrets Managerの使用

クラウドプロファイルとして構成されたオンプレミスシステムの認証情報を保存するためにAWS Secrets Managerをセットアップして使用するには、以下の手順を完了します:

  1. ワークスペースレベルのSecrets managementまたはプロジェクト固有のSecrets managementのいずれかに対してAWS Secrets Managerをセットアップします。
  2. コネクションでAWS Secrets Managerシークレットを使用します。 コネクション設定のコネクションタイプフィールドで、クラウドプロファイル(Workatoで直接設定することを意味します)として設定したオンプレミスグループの名前を選択します。

コネクションプロファイルでのAWS Secrets Managerの使用

レガシーコネクション構成

config.ymlファイルを使用したAWS Secrets Managerのセットアップは、最終的に非推奨になるレガシーコネクション構成です。 AWS Secrets ManagerをWorkatoで直接セットアップできるように、コネクションプロファイルをクラウドプロファイルに移行することをお勧めします。

このガイドでは、Workatoのオンプレミスエージェント(OPA)Amazon Web Services Secrets Managerを使用して、コネクションプロファイルとして構成されたデータベースの認証情報を保存する方法を示します。

構成すると、OPAはデフォルト認証情報プロバイダーチェーンを使用してAWSへのリクエストを認証するため、認証情報をOPA configファイルに保存する必要がなくなります。 Amazon Web Services (AWS) Secrets Managerを参照してください。

または、プロジェクトレベルでアクセスを管理し、プロジェクト内のコネクションがプロジェクト設定で指定されたロールを使用できるようにSecrets Manager設定を変更できます。 そのため、お客様はプロジェクト固有のIAMロールを作成し、シークレットの使用をプロジェクト内のコネクションに制限できます。 プロジェクト向けAmazon Web Services (AWS) Secrets Managerを参照してください。


前提条件

AWS Secrets ManagerをOPAで使用するように構成するには、以下が必要です:


ステップ1: AWSでのシークレットの作成

1

AWSコンソールにログインします。

2

ページ上部の検索バーを使用して、AWS Secrets Managerを開きます。

3

新しいシークレットを保存するボタンをクリックします。

4

ステップ1 - シークレットタイプの選択ページで:

1

シークレットタイプセクションで、その他のシークレットタイプをクリックします。

2

キー/値のペアセクションで、プレーンテキストオプションをクリックします。

3

プレーンテキストフィールドにパスワードを入力します。 OPAはこの値を取得し、そのまま渡します。

構成は次のようになります:

AWS Secrets Managerで構成されたシークレットタイプページAWS Secrets Managerの構成済みシークレットタイプページ

4

次へをクリックします。

5

ステップ2 - シークレットの設定ページで:

1

以下のフィールドに入力します:

  • シークレット名:シークレットの名前を入力します。 この値は次のセクションでOPA configファイルに追加します。これにより、OPAが正しいパスワードを取得できるようになります。
  • 説明(任意):シークレットの簡単な説明を入力します。

AWS Secrets Managerのシークレット構成ページAWS Secrets Managerのシークレット構成ページ

2

完了したら、次へをクリックします。

6

任意ステップ3 - ローテーションの設定ページで、必要に応じてシークレットのローテーションを設定します。 完了したら、次へをクリックします。

7

ステップ4 - レビューページで:

1

シークレットの詳細を確認します。

2

すべて問題なければ、保存をクリックしてシークレットを作成し、保存します。


ステップ2: OPA Configファイルの構成

このステップでは、Secrets Managerに関する情報をOPA構成ファイルに追加します。

認証情報は不要

構成すると、OPAはデフォルト認証情報プロバイダーチェーンを使用してAWSへのリクエストを認証します。 これにより、AWS Secrets Managerまたはデータベースの認証情報をOPA configファイルに保存する必要がなくなります。

1

OPA configファイルに、providerキーとregionキーを含むsecretsセクションを追加します:

yaml
secrets:
  provider: aws
  region: <YOUR_REGION>
2

providerには、awsを入力します。

3

regionには、AWSインスタンスが存在するリージョンを入力します:

yaml
secrets:
  provider: aws
  region: us-east-1

この情報は、AWSコンソールでページ上部のユーザーメニューの横にあるリージョンメニューをクリックすると確認できます:

AWS Secrets Managerのシークレット構成ページAWS Secrets Managerのシークレット構成ページ

この例では、リージョンはus-east-1です。

4

ファイルを保存します。


ステップ3: データベースプロファイルの構成

最後に、データベースのプロファイルで使用するシークレットを指定します。

1

configファイルで、データベースのプロファイルに移動します。

2

passwordキーで、{ secret: '<SECRET_NAME>'}を使用してシークレットを指定します。 <SECRET_NAME>は、ステップ1で作成したシークレットの名前と一致している必要があります:

yaml
database:
  sales_database:
    adapter: sqlserver
    host: localhost
    port: 1433
    database: test
    username: sales_user
    password: { secret: 'sales-db-password-password' }
3

ファイルを保存します。

Last updated: