Google Cloud IAM と Google SecOps を統合する
このドキュメントでは、 Google Cloud Identity and Access Management を Google Security Operations と統合する方法について説明します。
ユースケース
Google Cloud IAM 統合は、次のユースケースをサポートしています。
サービス アカウントのライフサイクル管理の自動化: オンボーディング プロセスとオフボーディング プロセスでサービス アカウントを自動的に作成、有効化、無効化し、必要な場合にのみアクセス権が付与されるようにします。
ID インシデントへの迅速な対応: セキュリティ インシデントが発生した場合に、不正使用されたサービス アカウントとロールを直ちに削除または無効にして、クラウド リソースへの不正アクセスを防ぎます。
ID ガバナンスとエンリッチメント: Google SecOps のユーザー エンティティに、表示名やプロジェクト ID などの詳細なサービス アカウント メタデータを追加して、調査中にアナリストがすぐにコンテキストを把握できるようにします。
ポリシーの監査と適用: アクセス制御ポリシーを取得して監査し、最小権限の原則に沿っていることを確認します。また、不正な変更を修復するために、新しいポリシーをプログラムで設定します。
ロールベースのアクセス制御(RBAC)の管理: 組織全体で特定の権限セットを持つカスタム IAM ロールを作成して管理し、クラウド環境へのアクセスをきめ細かく制御します。
始める前に
Google SecOps で Google Cloud IAM 統合を構成する前に、次の前提条件の手順を完了します。
カスタム IAM ロールを作成する: サービス アカウントとロールの管理に必要な特定の権限を持つロールを定義します。
サービス アカウントを作成する: 統合がアクションの実行に使用する ID を作成します。
認証方法を選択する: 推奨の Workload Identity またはサービス アカウントの JSON キーを選択します。
カスタム IAM ロールを作成して構成する
最小権限の原則を維持するには、次の手順に沿って、この統合に必要な特定の権限のみを含むカスタムロールを作成します。
Google Cloud コンソールで、[IAM と管理] > [ロール] に移動します。
[ロールを作成] をクリックします。
[タイトル]、[説明]、[ID] を指定します。
ロールのリリース段階を
General Availabilityに設定します。[権限を追加] をクリックし、次の特定の権限を追加します。
iam.serviceAccounts.listiam.serviceAccounts.createiam.serviceAccounts.getiam.serviceAccounts.getIamPolicyiam.serviceAccounts.setIamPolicyiam.serviceAccounts.disableiam.serviceAccounts.enableiam.serviceAccounts.deleteiam.roles.listiam.roles.getiam.roles.createiam.roles.delete
[作成] をクリックします。
サービス アカウントを作成する
この統合では、サービス アカウントを使用して認証を行い、プロジェクト内で IAM アクションを実行します。
サービス アカウントを作成するには、次の操作を行います。
Google Cloud コンソールで、[IAM と管理] > [サービス アカウント] に移動します。
[サービス アカウントを作成] をクリックします。
名前と説明を入力し、[作成して続行] をクリックします。
[このサービス アカウントにプロジェクトへのアクセスを許可する] セクションで、前の手順で作成したカスタムロールをこのサービス アカウントに割り当てます。[完了] をクリックします。
認証方法を選択する
Google SecOps は、この統合に対して次の 2 つの認証パスをサポートしています。
オプション 1: Workload Identity(推奨): この方法では、サービス アカウントの権限借用を使用して有効期間の短いトークンを使用します。有効期間の長い JSON 鍵が不要になるため、セキュリティが強化されます。
オプション 2: サービス アカウント JSON キー: この方法では、静的キーファイルを使用します。これは、環境で Workload Identity が使用できない場合にのみ使用してください。
Workload Identity を使用して認証する(推奨)
Workload Identity を使用するには、作成したサービス アカウントの権限を借用するように Google SecOps インスタンスを承認する必要があります。
Google SecOps で、[コンテンツ ハブ] > [レスポンス統合] に移動します。
[Google Cloud IAM] 統合を選択します。
[Workload Identity Email] フィールドにサービス アカウントのメールアドレスを入力します。
[保存]、[テスト] の順にクリックします。テストは最初は失敗することが想定されます。
失敗したテストの横にある close_small をクリックして、エラー メッセージを表示します。
エラー メッセージの末尾付近にある固有のメールアドレス(
gke-init-python@...またはsoar-python@...の形式)を検索します。このアドレスをコピーします。
権限の借用を許可する
Google SecOps インスタンスの一意の ID を取得したら、 Google Cloud リソースにアクセスできるように承認する必要があります。この手順により、サービス アカウントの権限借用が有効になり、プラットフォームは静的キーを必要とせずに、有効期間の短いトークンを生成してユーザーに代わって操作できます。
Google Cloud コンソールで、[IAM と管理] > [サービス アカウント] に移動します。
この統合用に作成したサービス アカウントを選択します。
[権限] タブに移動し、[アクセスを許可] をクリックします。
コピーした一意のメールアドレスを [新しいプリンシパル] フィールドに貼り付けます。
サービス アカウント トークン作成者ロール(
roles/iam.serviceAccountTokenCreator)を割り当てます。[保存] をクリックします。
JSON キーを使用して認証する
環境で Workload Identity を使用できない場合は、サービス アカウントの JSON キーを使用して統合を認証できます。この方法は、静的で有効期間の長いシークレット ファイルを使用して、プラットフォームと Google Cloud リソース間の接続を確立します。
Google Cloud コンソールで、[IAM と管理>サービス アカウント] に移動し、サービス アカウントを選択します。
[キー] タブに移動します。
[鍵を追加] > [新しい鍵を作成] の順にクリックします。
キーのタイプとして [
JSON] を選択し、[作成] をクリックします。ファイルがパソコンにダウンロードされます。JSON ファイルの内容全体をコピーします。
プラットフォームでこの統合を構成するときに、このコンテンツを [Service Account Json File Content] フィールドに貼り付けます。
統合のパラメータ
Google Cloud IAM 統合には、次のパラメータが必要です。
| パラメータ | 説明 |
|---|---|
API Root |
省略可。 Google Cloud IAM インスタンスのベース URL。 デフォルト値は |
Account Type |
省略可。 Google Cloud アカウントのタイプ。 この値は、認証 JSON ファイルの デフォルト値は |
Project ID |
省略可。 Google Cloud アカウントのプロジェクト ID。 この値は、認証 JSON ファイルの |
Quota Project ID |
省略可。 API リクエストを行う際に割り当てと課金に使用されるプロジェクト ID。 |
Private Key ID |
省略可。 Google Cloud アカウントの秘密鍵 ID。 この値は、認証 JSON ファイルの |
Private Key |
省略可。 Google Cloud アカウントの秘密鍵。 この値は、認証 JSON ファイルの |
Client Email |
省略可。 Google Cloud アカウントのクライアント メール。 この値は、認証 JSON ファイルの |
Client ID |
省略可。 Google Cloud アカウントのクライアント ID。 この値は、認証 JSON ファイルの |
Auth URI |
省略可。 Google Cloud アカウントの認証 URI。 この値は、認証 JSON ファイルの デフォルト値は |
Token URI |
省略可。 Google Cloud アカウントのトークン URI。 この値は、認証 JSON ファイルの デフォルト値は |
Auth Provider X509 URL |
省略可。 認証プロバイダの X.509 証明書の URL。 この値は、認証 JSON ファイルの デフォルト値は |
Client X509 URL |
省略可。 クライアント X.509 証明書の URL。 この値は、認証 JSON ファイルの |
Organization ID |
省略可。 Google Cloud 組織の一意の識別子。 |
Service Account Json File Content |
省略可。 サービス アカウント キーファイルの完全な JSON コンテンツ。 このパラメータを指定すると、個々の接続パラメータ( |
Workload Identity Email |
省略可。 Workload Identity サービス アカウントに関連付けられたメールアドレス。 |
Verify SSL |
省略可。 選択すると、統合は Google Cloud IAM サービスに接続するときに SSL 証明書を検証します。 デフォルトで有効になっています。 |
Google SecOps で統合を構成する手順については、統合を構成するをご覧ください。
必要に応じて、後の段階で変更できます。統合インスタンスを構成すると、ハンドブックで使用できるようになります。複数のインスタンスの構成とサポートの方法については、複数のインスタンスのサポートをご覧ください。
操作
アクションの詳細については、 デスクから保留中のアクションに対応すると手動による対策を実行するをご覧ください。
ロールを作成
Identity and Access Management ロールを作成します。
パラメータ
| パラメータの表示名 | タイプ | デフォルト値 | 必須 | 説明 |
|---|---|---|---|---|
| 役割 ID | 文字列 | なし | ○ | 新しく作成された Identity and Access Management ロールのロール ID を指定します。 |
| ロール定義 | 文字列 | なし | ○ | ロール定義として使用する JSON ポリシー ドキュメントを指定します。 |
実行
このアクションはエンティティに対しては実行されません。
ロールポリシー JSON の例
{
"name": "projects/silver-shift-275007/roles/iam_test_role_api",
"title": "iam_test_role_api",
"description": "test role",
"includedPermissions": [
"storagetransfer.projects.getServiceAccount"
],
"stage": "GA",
"etag": "BwXBu1RHiPw="
}
アクションの結果
スクリプトの結果
| スクリプトの結果名 | 値のオプション |
|---|---|
| is_success | is_success=False |
| is_success | is_success=True |
JSON の結果
{
"name": "projects/[PROJECT_ID]/roles/[ROLE_NAME]",
"title": "[ROLE_TITLE]",
"description": "[ROLE_DESCRIPTION]",
"includedPermissions": [
"storagetransfer.projects.getServiceAccount"
],
"stage": "GA",
"etag": "[ETAG_VALUE]"
}
Case Wall
| 結果のタイプ | 値 / 説明 | タイプ |
|---|---|---|
| 出力メッセージ* | アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。
アクションが失敗し、ハンドブックの実行が停止します。 間違った認証情報、サーバーへの接続なし、その他など、致命的なエラー、SDK エラーの場合::「アクション「ロールの作成」の実行エラー。理由: {0}」.format(error.Stacktrace) |
全般 |
サービス アカウントを作成する
Identity and Access Management サービス アカウントを作成します。
パラメータ
| パラメータの表示名 | タイプ | デフォルト値 | 必須 | 説明 |
|---|---|---|---|---|
| サービス アカウント ID | 文字列 | 文字列 | ○ | 作成するサービス アカウント ID を指定します。 |
| サービス アカウントの表示名 | 文字列 | 文字列 | × | 作成するサービス アカウントの表示名を指定します。 |
| サービス アカウントの説明 | 文字列 | 文字列 | × | 作成するサービス アカウントの説明を指定します。 |
実行
このアクションはエンティティに対しては実行されません。
アクションの結果
スクリプトの結果
| スクリプトの結果名 | 値のオプション |
|---|---|
| is_success | is_success=False |
| is_success | is_success=True |
JSON の結果
{
"name": "projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com",
"projectId": "PROJECT_ID",
"uniqueId": "UNIQUE_ID",
"email": "SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com",
"displayName": "SERVICE_ACCOUNT_DISPLAY_NAME",
"etag": "ETAG_VALUE",
"description": "SERVICE_ACCOUNT_DESCRIPTION",
"oauth2ClientId": "UNIQUE_ID"
}
Case Wall
| 結果のタイプ | 値 / 説明 | タイプ |
|---|---|---|
| 出力メッセージ* | アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。
アクションが失敗し、ハンドブックの実行が停止します。 間違った認証情報、サーバーへの接続なし、その他など、致命的なエラー、SDK エラーの場合::「アクション「サービス アカウントの作成」の実行エラー。理由: {0}」.format(error.Stacktrace) |
全般 |
ロールを削除
Identity and Access Management ロールを削除します。
パラメータ
| パラメータの表示名 | タイプ | デフォルト値 | 必須 | 説明 |
|---|---|---|---|---|
| 役割 ID | 文字列 | なし | ○ | 新しく作成された Identity and Access Management ロールのロール ID を指定します。 |
実行
このアクションはエンティティに対しては実行されません。
アクションの結果
スクリプトの結果
| スクリプトの結果名 | 値のオプション |
|---|---|
| is_success | is_success=False |
| is_success | is_success=True |
JSON の結果
{
"name": "projects/[PROJECT_ID]/roles/[ROLE_NAME]",
"title": "[ROLE_TITLE]",
"description": "[ROLE_DESCRIPTION]",
"includedPermissions": [
"storagetransfer.projects.getServiceAccount"
],
"stage": "GA",
"etag": "[ETAG_VALUE]",
"deleted": true
}
Case Wall
| 結果のタイプ | 値 / 説明 | タイプ |
|---|---|---|
| 出力メッセージ* | アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。
アクションが失敗し、ハンドブックの実行が停止します。 間違った認証情報、サーバーへの接続なし、その他など、致命的なエラー、SDK エラーの場合::「アクション「ロールの削除」の実行エラー。理由: {0}」.format(error.Stacktrace) |
全般 |
サービス アカウントの削除
サービス アカウントを削除します。このアクションでは、Identity and Access Management サービス アカウントのメールアドレスが Google SecOps ユーザー エンティティとして必要です。
実行
このアクションはユーザー エンティティに対して実行されます。
アクションの結果
スクリプトの結果
| スクリプトの結果名 | 値のオプション |
|---|---|
| is_success | is_success=False |
| is_success | is_success=True |
ケースウォール
| 結果のタイプ | 値 / 説明 | タイプ |
|---|---|---|
| 出力メッセージ* | アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。
アクションが失敗し、ハンドブックの実行が停止します。 間違った認証情報、サーバーへの接続なし、その他など、致命的なエラー、SDK エラーの場合::「アクション「サービス アカウントの削除」の実行エラー。理由: {0}」.format(error.Stacktrace) |
全般 |
サービス アカウントを無効にする
サービス アカウントを無効にします。このアクションでは、Identity and Access Management サービス アカウントのメールアドレスが Google SecOps ユーザー エンティティとして必要です。
実行
このアクションはユーザー エンティティに対して実行されます。
アクションの結果
スクリプトの結果
| スクリプトの結果名 | 値のオプション |
|---|---|
| is_success | is_success=False |
| is_success | is_success=True |
ケースウォール
| 結果のタイプ | 値 / 説明 | タイプ |
|---|---|---|
| 出力メッセージ* | アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。
アクションが失敗し、ハンドブックの実行が停止します。 間違った認証情報、サーバーへの接続なし、その他など、致命的なエラー、SDK エラーの場合: 「アクション「サービス アカウントの無効化」の実行エラー。理由: {0}」.format(error.Stacktrace) |
全般 |
サービス アカウントを有効にする
サービス アカウントを有効にします。このアクションでは、Identity and Access Management サービス アカウントのメールアドレスが Google SecOps ユーザー エンティティとして必要です。
実行
このアクションはユーザー エンティティに対して実行されます。
アクションの結果
スクリプトの結果
| スクリプトの結果名 | 値のオプション |
|---|---|
| is_success | is_success=False |
| is_success | is_success=True |
ケースウォール
| 結果のタイプ | 値 / 説明 | タイプ |
|---|---|---|
| 出力メッセージ* | アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。
アクションが失敗し、ハンドブックの実行が停止します。 間違った認証情報、サーバーへの接続なし、その他など、致命的なエラー、SDK エラーの場合::「アクション「サービス アカウントの有効化」の実行エラー。理由: {0}」.format(error.Stacktrace) |
全般 |
エンティティの拡充
Identity and Access Management のサービス アカウント情報で Google SecOps ユーザー エンティティを拡充します。このアクションでは、Identity and Access Management サービス アカウントのメールアドレスが Google SecOps ユーザー エンティティとして必要です。
実行
このアクションはユーザー エンティティに対して実行されます。
アクションの結果
スクリプトの結果
| スクリプトの結果名 | 値のオプション |
|---|---|
| is_success | is_success=False |
| is_success | is_success=True |
JSON の結果
{
"name": "projects/[PROJECT_ID]/serviceAccounts/[SERVICE_ACCOUNT_NAME]@[PROJECT_ID].iam.gserviceaccount.com",
"projectId": "[PROJECT_ID]",
"uniqueId": "[UNIQUE_ID]",
"email": "[SERVICE_ACCOUNT_NAME]@[PROJECT_ID].iam.gserviceaccount.com",
"displayName": "[DISPLAY_NAME]",
"etag": "[ETAG]",
"description": "[DESCRIPTION]",
"oauth2ClientId": "[UNIQUE_ID]"
}
エンティティ拡充
| 拡充フィールド名 | ロジック - 適用するタイミング |
|---|---|
| Google_IAM_name | |
| Google_IAM_project_id | .. |
| Google_IAM_unique_id | |
| Google_IAM_email | |
| Google_IAM_display_name | |
| Google_IAM_description | |
| Google_IAM_oauth2_client_id |
ケースウォール
| 結果のタイプ | 値 / 説明 | タイプ |
|---|---|---|
| 出力メッセージ* | アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。
アクションが失敗し、ハンドブックの実行が停止します。 間違った認証情報、サーバーへの接続なし、その他など、致命的なエラー、SDK エラーの場合::「アクション「エンティティの拡充」の実行エラー。理由: {0}」.format(error.Stacktrace) |
全般 |
| テーブル(拡充) | テーブル名: {entity} 拡充テーブル 列: Key、Value |
エンティティ |
サービス アカウントの IAM ポリシーを取得する
サービス アカウントのアクセス制御ポリシーを取得します。このアクションは、Identity and Access Management サービス アカウントのメールアドレスを Google SecOps ユーザー エンティティとして想定しています。サービス アカウントにポリシーが割り当てられていない場合、ポリシーは空になることがあります。
実行
このアクションはユーザー エンティティに対して実行されます。
アクションの結果
スクリプトの結果
| スクリプトの結果名 | 値のオプション |
|---|---|
| is_success | is_success=False |
| is_success | is_success=True |
JSON の結果
{
"version": 1,
"etag": "[ETAG_VALUE]",
"bindings": [
{
"role": "roles/iam.securityReviewer",
"members": [
"user:[USER_EMAIL]"
]
}
]
}
Case Wall
| 結果のタイプ | 値 / 説明 | タイプ |
|---|---|---|
| 出力メッセージ* | アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。
アクションが失敗し、ハンドブックの実行が停止します。 間違った認証情報、サーバーへの接続なし、その他など、致命的なエラー、SDK エラーの場合::「アクション「サービス アカウントの IAM ポリシーの取得」の実行エラー。理由: {0}」.format(error.Stacktrace) |
全般 |
ロールを一覧表示する
指定された検索条件に基づいて Identity and Access Management ロールを一覧表示します。Google SecOps エンティティではアクションが機能しません。
パラメータ
| パラメータの表示名 | タイプ | デフォルト値 | 必須 | 説明 |
|---|---|---|---|---|
| 表示 | DDL | 基本 | × | ロール情報を返すために使用するビューを指定します。 |
| 返される最大行数 | 整数 | 50 | × | アクションが返すロールの数を指定します。 |
| プロジェクトのカスタムロールのみを一覧表示しますか? | チェックボックス | オフ | × | 有効にすると、アクションは現在のプロジェクト ID に定義されているカスタムロールのみを返します。 |
| 削除済みを表示 | チェックボックス | オフ | × | 有効にすると、削除されたロールも返されます。 |
実行
このアクションはエンティティに対しては実行されません。
アクションの結果
スクリプトの結果
| スクリプトの結果名 | 値のオプション |
|---|---|
| is_success | is_success=False |
| is_success | is_success=True |
JSON の結果
{
"roles": [
{
"name": "roles/accessapproval.approver",
"title": "Access Approval Approver",
"description": "Ability to view or act on access approval requests and view configuration",
"stage": "BETA",
"etag": "[ETAG_VALUE]"
},
{
"name": "roles/accessapproval.configEditor",
"title": "Access Approval Config Editor",
"description": "Ability update the Access Approval configuration",
"stage": "BETA",
"etag": "[ETAG_VALUE]"
}
]
}
Case Wall
| 結果のタイプ | 値 / 説明 | タイプ |
|---|---|---|
| 出力メッセージ* | アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。
アクションが失敗し、ハンドブックの実行が停止します。 間違った認証情報、サーバーへの接続なし、その他など、致命的なエラー、無効なゾーン、SDK エラーの場合::「アクション「ロールの一覧表示」の実行エラー。理由: {0}」.format(error.Stacktrace) |
全般 |
| テーブル | テーブル名: Google Cloud IAM ロール テーブル列: ロール名 ロールのタイトル 役割の説明 Role Stage ロールの ETag ロールの権限 |
全般 |
サービス アカウントの一覧表示
指定された検索条件に基づいて Identity and Access Management サービス アカウントを一覧表示します。Google SecOps エンティティではアクションが機能しません。
パラメータ
| パラメータの表示名 | タイプ | デフォルト値 | 必須 | 説明 |
|---|---|---|---|---|
| サービス アカウントの表示名 | 文字列 | なし | × | 返すサービス アカウントの表示名を指定します。このパラメータは、カンマ区切りの文字列として複数の値を受け入れます。 |
| サービス アカウントのメール | 文字列 | なし | × | 返すサービス アカウントのメールアドレスを指定します。このパラメータは、カンマ区切りの文字列として複数の値を受け入れます。 |
| 返される最大行数 | 整数 | 50 | × | アクションが返すロールの数を指定します。 |
実行
このアクションはエンティティに対しては実行されません。
アクションの結果
スクリプトの結果
| スクリプトの結果名 | 値のオプション |
|---|---|
| is_success | is_success=False |
| is_success | is_success=True |
JSON の結果
{
"accounts": [
{
"name": "projects/[PROJECT_ID]/serviceAccounts/[SERVICE_ACCOUNT_NAME]@[PROJECT_ID].iam.gserviceaccount.com",
"projectId": "[PROJECT_ID]",
"uniqueId": "[UNIQUE_ID]",
"email": "[SERVICE_ACCOUNT_NAME]@[PROJECT_ID].iam.gserviceaccount.com",
"displayName": "[DISPLAY_NAME]",
"etag": "[ETAG_VALUE]",
"description": "[SERVICE_ACCOUNT_DESCRIPTION]",
"oauth2ClientId": "[UNIQUE_ID]"
}
]
}
Case Wall
| 結果のタイプ | 値 / 説明 | タイプ |
|---|---|---|
| 出力メッセージ* | アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。
アクションが失敗し、ハンドブックの実行が停止します。 致命的なエラー、無効なゾーン、SDK エラー(認証情報が間違っている、サーバーへの接続がないなど)の場合::「アクション「サービス アカウントの一覧表示」の実行エラー。理由: {0}」.format(error.Stacktrace) |
全般 |
| テーブル | テーブル名: Google Cloud Service Accounts テーブル列: サービス アカウント名 サービス アカウントの一意の ID サービス アカウントのメール サービス アカウントの表示名 サービス アカウントの説明 サービス アカウントの OAuth2 クライアント ID |
全般 |
Ping
Google Security Operations の [Marketplace] タブの統合構成ページで提供されているパラメータを使用して、Identity and Access Management サービスへの接続をテストします。
パラメータ
なし
実行
このアクションはエンティティに対しては実行されません。
アクションの結果
スクリプトの結果
| スクリプトの結果名 | 値のオプション |
|---|---|
| is_success | is_success=False |
| is_success | is_success=True |
ケースウォール
| 結果のタイプ | 値 / 説明 | タイプ |
|---|---|---|
| 出力メッセージ * | アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。
アクションが失敗し、ハンドブックの実行が停止します。
|
全般 |
サービス アカウント キーのローテーション
サービス アカウント キーのローテーション アクションを使用して、サービス アカウントに関連付けられたユーザー管理のキーをローテーションします。ローテーション中は、既存の鍵がすべて削除され、新しい鍵が作成されます。
このアクションは、次の Google SecOps エンティティに対して実行されます。
DeploymentUsername
アクション入力
[サービス アカウント キーをローテーションする] アクションには、次のパラメータが必要です。
| パラメータ | 説明 |
|---|---|
Service Account |
省略可。 キーをローテーションするサービス アカウントのカンマ区切りのリスト。 このパラメータはエンティティとともに機能します。指定された場合、アクションは、アクションの範囲で識別されたサービス アカウント エンティティに加えて、これらの特定のアカウントのキーをローテーションします。 |
アクションの出力
[サービス アカウント キーをローテーションする] アクションは、次の出力を提供します。
| アクションの出力タイプ | 対象 |
|---|---|
| ケースウォールのアタッチメント | 利用不可 |
| ケースウォールのリンク | 利用不可 |
| ケースウォール テーブル | 利用不可 |
| 拡充テーブル | 利用不可 |
| JSON の結果 | 利用可能 |
| 出力メッセージ | 利用可能 |
| スクリプトの結果 | 利用可能 |
JSON の結果
次の例は、[サービス アカウント キーをローテーションする] アクションを使用したときに受信した JSON 結果の出力です。
[
{
"Entity": "123",
"EntityResult": {
"name": "projects/example-project/serviceAccounts/sample-sa@example-project.iam.gserviceaccount.com/keys/b333bbda7826af991a4d4cc4e3f83325103580ca",
"validAfterTime": "2023-09-12T11:02:31Z",
"validBeforeTime": "9999-12-31T23:59:59Z",
"keyAlgorithm": "KEY_ALG_RSA_2048",
"keyOrigin": "GOOGLE_PROVIDED",
"keyType": "USER_MANAGED"
}
},
{
"Entity": "1234",
"EntityResult": {
"name": "projects/example-project/serviceAccounts/sample-sa@example-project.iam.gserviceaccount.com/keys/b333bbda7826af991a4d4cc4e3f83325103580ca",
"validAfterTime": "2023-09-12T11:02:31Z",
"validBeforeTime": "9999-12-31T23:59:59Z",
"keyAlgorithm": "KEY_ALG_RSA_2048",
"keyOrigin": "GOOGLE_PROVIDED",
"keyType": "USER_MANAGED"
}
}
]
出力メッセージ
[サービス アカウント キーをローテーション] アクションは、次の出力メッセージを返すことがあります。
| 出力メッセージ | メッセージの説明 |
|---|---|
|
アクションが成功しました。 |
Error executing action "Rotate Service Account Keys". Reason:
ERROR_REASON |
操作に失敗しました。 サーバーへの接続、入力パラメータ、または認証情報を確認してください。 |
スクリプトの結果
次の表に、[Rotate Service Account Keys] アクションを使用する場合のスクリプト結果出力の値を示します。
| スクリプトの結果名 | 値 |
|---|---|
is_success |
true または false |
サービス アカウントの IAM ポリシーを設定する
指定したサービス アカウントにアクセス制御ポリシーを設定します。Action は、Identity and Access Management サービス アカウントのメールアドレスを Google SecOps アカウント エンティティとして想定しています。アクションで指定されたポリシーは、既存のポリシーをすべて置き換えます。
パラメータ
| パラメータの表示名 | タイプ | デフォルト値 | 必須 | 説明 |
|---|---|---|---|---|
| ポリシー | 文字列 | なし | ○ | サービス アカウントに設定する JSON ポリシードキュメントを指定します。 |
実行
このアクションはアカウント エンティティに対して実行されます。
アクションの結果
スクリプトの結果
| スクリプトの結果名 | 値のオプション |
|---|---|
| is_success | is_success=False |
| is_success | is_success=True |
JSON の結果
{
"version": 1,
"etag": "[ETAG_VALUE]",
"bindings": [
{
"role": "roles/iam.securityReviewer",
"members": [
"user:[USER_EMAIL]"
]
}
]
}
Case Wall
| 結果のタイプ | 値 / 説明 | タイプ |
|---|---|---|
| 出力メッセージ* | アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。
アクションが失敗し、ハンドブックの実行が停止します。 間違った認証情報、サーバーへの接続なし、その他など、致命的なエラー、SDK エラーの場合::「アクション「サービス アカウントの IAM ポリシーの設定」の実行エラー。理由: {0}」.format(error.Stacktrace) |
全般 |
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。