リモート エージェントの認証インフラストラクチャを移行する
このドキュメントでは、 Google Cloud サービス アカウントを使用してリモート エージェント インフラストラクチャを移行する方法について説明します。今回の移行は認証インフラストラクチャのみを対象としています。Remote Agent のインスタンスやホストを移行または置き換える必要はありません。
始める前に
以下のものが揃っていることを確認してください。
- Google Cloudでサービス アカウントを作成するために必要な権限。
- サービス アカウント キーを作成するために必要なロール。
- 必要な最小 Remote Agent バージョンは 2.6.2 以降です。
サービス アカウントを作成する
サービス アカウントは、アプリケーションが承認済みの API 呼び出しを行うために使用する特別なタイプの Google アカウントです。
サービス アカウントを作成するには、次の操作を行います。
- Google Cloud コンソールで、[サービス アカウント] ページに移動します。 [サービス アカウント] に移動
- [サービス アカウントを作成] をクリックします。
- [サービス アカウントの詳細] セクションで、次の操作を行います。
- サービス アカウントの名前を入力します。
- サービス アカウントの説明を入力します。
- [作成して続行] をクリックします。
- [権限] セクションで、次の操作を行います。
- [ロールを選択] リストで、[Chronicle SOAR リモート エージェント] ロールを選択します。
- [続行] をクリックします。
- [ユーザーにこのサービス アカウントへのアクセスを許可する] セクションで、[完了] をクリックします。
サービス アカウント キーを作成する
リモート エージェントを認証するには、サービス アカウント キーが必要です。この鍵を作成する手順は次のとおりです。
- Google Cloud コンソールで、[サービス アカウント] ページに移動します。 [サービス アカウント] に移動
- 作成したサービス アカウントの名前をクリックします。
- [キー] タブをクリックします。
- [鍵を追加>新しい鍵を作成] をクリックします。
- 鍵のタイプとして [JSON] を選択し、[作成] をクリックします。
A JSON file containing the key is downloaded to your computer. - [閉じる] をクリックします。
鍵ファイルを安全に保管する
サービス アカウント キーをダウンロードしたら、リモート エージェントが実行されるホストマシンに移動する必要があります。
Podman
- パソコンでダウンロードした JSON ファイルを見つけます。
- エージェント プロセスがアクセスできるホストマシンの安全な場所にファイルを保存します。
-
ホストマシンでエージェントのサービス アカウント キーのフルパスを入力します。
AGENT_SERVICE_ACCOUNT_PATH
Docker
- パソコンでダウンロードした JSON ファイルを見つけます。
- エージェント プロセスがアクセスできるホストマシンの安全な場所にファイルを保存します。
-
ホストマシン上のエージェントのサービス アカウント キーのフルパスを入力します。
AGENT_SERVICE_ACCOUNT_PATH
インストーラ
- パソコンでダウンロードした JSON ファイルを見つけます。
- ファイルを次の場所に保存します。
AGENT_SERVICE_ACCOUNT_PATH
- このファイルのフルパスをメモしておきます。これは、リモート エージェントを構成するときに必要になります。
リモート エージェントのサービス アカウントをマッピングする
リモート エージェントのサービス アカウントを作成したら、プラットフォーム内で承認して、Google SecOps との通信を正常に行えるようにする必要があります。
Google SecOps にサービス アカウント アクセスまたはワークロード ID 連携アクセスを付与するには、ID をプラットフォームのアクセス制御パラメータにマッピングする必要があります。このマッピングは、自動タスクまたは API オペレーションの実行に必要な SOC ロールと環境へのアクセス権を ID に付与するために必要な手順です。
- [SOAR 設定] > [詳細] > [グループ マッピング] に移動します。
- [追加] 追加 をクリックします。
[マッピングを追加] ダイアログのフィールドに値を入力して、ID をプラットフォームのアクセス制御パラメータにマッピングします。
- [IdP / ユーザー グループ] フィールドに、次のいずれかを入力します。
- Cloud Identity を使用して ID が設定されている場合は、サービス アカウントの完全なメールアドレス。
- Workforce Identity 連携を使用して ID が設定されている場合は、Workload Identity プリンシパル文字列。
次のアクセス制御フィールドを構成します。
フィールド 説明 権限グループ 権限グループを選択して、ID がアクセスできるモジュールとサブモジュールを定義します。 SOC ロール SOC ロールを選択して、ID のロール(Tier 1 など)を定義します。 環境 ID がアクセスできる環境または環境グループ([すべての環境] など)を選択します。 グループ メンバー 必要に応じて、必要なユーザーのメールアドレスを入力します。メールアドレスを追加するたびに Enter キーを押します。 制限される操作 モジュール内の特定のオペレーションを制限する制限付きアクションを選択します。
- [IdP / ユーザー グループ] フィールドに、次のいずれかを入力します。
[追加] をクリックします。
Google Cloudへのリモート エージェント認証を構成する
Podman
新しいエージェントをデプロイする場合は、Podman を使用してエージェントをデプロイするをご覧ください。
エージェントをアップグレードする場合は、Podman を使用してエージェントをアップグレードするをご覧ください。
Docker
新しいエージェントをデプロイする場合は、Docker を使用してエージェントをデプロイするをご覧ください。
エージェントをアップグレードする場合は、Docker を使用してエージェントをアップグレードするをご覧ください。
インストーラ
新しいエージェントをデプロイする場合は、CentOS でエージェントをデプロイする または RHEL でエージェントをデプロイするをご覧ください。
エージェントをアップグレードする場合は、CentOS でエージェントをアップグレードするまたは RHEL でエージェントをアップグレードする をご覧ください。
既存のエージェントの環境変数を移行する
[SOAR Settings] > [Advanced] > [Remote Agents] に移動し、必要なリモート エージェントで [View More] をクリックします。
[Docker Command] フィールドから次の値をコピーし、次のコマンドに貼り付けます。
これらは移行手順で使用します。
-
ONE PLATFORM URL DOMAINONE_PLATFORM_URL_DOMAIN
-
ONE PLATFORM URL PROJECTONE_PLATFORM_URL_PROJECT
-
ONE PLATFORM URL LOCATIONONE_PLATFORM_URL_LOCATION
-
ONE PLATFORM URL INSTANCEONE_PLATFORM_URL_INSTANCE
Podman
リモート エージェントの環境変数を移行する手順は次のとおりです。
-
実行中の Podman コンテナを一覧表示します。
podman ps -
エージェントのコンテナ ID を入力します。
CONTAINER_ID
-
前の手順でコピーした次の環境変数を貼り付けて、このコマンドを実行します。
podman exec CONTAINER_ID sh -c 'printf "export ONE_PLATFORM_URL_DOMAIN=ONE_PLATFORM_URL_DOMAIN\nexport ONE_PLATFORM_URL_PROJECT=ONE_PLATFORM_URL_PROJECT\nexport ONE_PLATFORM_URL_LOCATION=ONE_PLATFORM_URL_LOCATION\nexport ONE_PLATFORM_URL_INSTANCE=ONE_PLATFORM_URL_INSTANCE\nexport GOOGLE_APPLICATION_CREDENTIALS=/opt/SiemplifyAgent/agent-key.json" >> /home/siemplify_agent/.bash_profile'
Docker
リモート エージェントの環境変数を移行する手順は次のとおりです。
-
実行中の Docker コンテナを一覧表示します。
docker ps -
エージェントのコンテナ ID を入力します。
CONTAINER_ID
-
前の手順の次の環境変数を貼り付けて、このコマンドを実行します。
docker exec CONTAINER_ID sh -c 'printf "export ONE_PLATFORM_URL_DOMAIN=ONE_PLATFORM_URL_DOMAIN\nexport ONE_PLATFORM_URL_PROJECT=ONE_PLATFORM_URL_PROJECT\nexport ONE_PLATFORM_URL_LOCATION=ONE_PLATFORM_URL_LOCATION\nexport ONE_PLATFORM_URL_INSTANCE=ONE_PLATFORM_URL_INSTANCE\nexport GOOGLE_APPLICATION_CREDENTIALS=/opt/SiemplifyAgent/agent-key.json" >> /home/siemplify_agent/.bash_profile'
インストーラ
リモート エージェントの環境変数を移行する手順は次のとおりです。
前の手順の次の環境変数を貼り付けて、このコマンドを実行します。
cat << EOF >> /home/siemplify_agent/.bash_profile export ONE_PLATFORM_URL_DOMAIN=ONE_PLATFORM_URL_DOMAIN export ONE_PLATFORM_URL_PROJECT=ONE_PLATFORM_URL_PROJECT export ONE_PLATFORM_URL_LOCATION=ONE_PLATFORM_URL_LOCATION export ONE_PLATFORM_URL_INSTANCE=ONE_PLATFORM_URL_INSTANCE export GOOGLE_APPLICATION_CREDENTIALS=/opt/SiemplifyAgent/agent-key.json EOF
サービス アカウントをリモート エージェントに移行する
この手順が完了し、すべての環境変数がリモート エージェントに存在すると、移行が完了し、リモート エージェントは Google Cloud を介して通信します。
Podman
リモート エージェント認証インフラストラクチャを移行する手順は次のとおりです。
-
実行中の Podman コンテナを一覧表示します。
podman ps -
エージェントのコンテナ ID を入力します。
CONTAINER_ID
-
次のコマンドを使用して、サービス アカウント キーをコンテナ内の専用パスにコピーします。
podman cp AGENT_SERVICE_ACCOUNT_PATH CONTAINER_ID:/opt/SiemplifyAgent/agent-key.json
次のコマンドを使用して、コンテナ内のサービス アカウント キーの所有者を変更します。
podman exec -u 0 CONTAINER_ID chown siemplify_agent:siemplify_agent /opt/SiemplifyAgent/agent-key.json
-
次のコマンドを実行して変更を適用します。
podman restart CONTAINER_ID
Docker
リモート エージェントの認証インフラストラクチャを移行する手順は次のとおりです。
-
実行中の Docker コンテナを一覧表示します。
docker ps -
エージェントのコンテナ ID を入力します。
CONTAINER_ID
-
次のコマンドを使用して、サービス アカウント キーをコンテナ内の専用パスにコピーします。
docker cp AGENT_SERVICE_ACCOUNT_PATH CONTAINER_ID:/opt/SiemplifyAgent/agent-key.json
次のコマンドを使用して、コンテナ内のサービス アカウント キーの所有者を変更します。
docker exec -u 0 CONTAINER_ID chown siemplify_agent:siemplify_agent /opt/SiemplifyAgent/agent-key.json
-
次のコマンドを実行して変更を適用します。
docker restart CONTAINER_ID
インストーラ
リモート エージェントの認証インフラストラクチャを移行する手順は次のとおりです。
-
サービス アカウントを想定されるパスに移動する
mv AGENT_SERVICE_ACCOUNT_PATH /opt/SiemplifyAgent/agent-key.json
-
次のコマンドを使用して、コンテナ内のサービス アカウント キーの所有者を変更します。
chown siemplify_agent:siemplify_agent /opt/SiemplifyAgent/agent-key.json
-
次のコマンドを実行して、エージェント サービスを再起動します。
supervisorctl restart siemplify_agent
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。