IAM を使用して機能アクセス制御を構成する
Google のセキュリティ運用は Google Cloud と統合されていますIdentity and Access Management(IAM) Google のセキュリティ運用固有の権限および 事前定義ロールして、ソース別にトラフィック データを分類します。Google セキュリティ オペレーションの管理者は、ユーザーまたはグループを事前定義ロールまたは IAM カスタムロールにバインドする IAM ポリシーを作成することで、Google Security Operations 機能へのアクセスを制御できます。この機能は、UDM レコード内の特定の UDM レコードまたはフィールドへのアクセスを制御しません。
このドキュメントでは、Google Security Operations と IAM の統合の仕組みについて説明します。また、Google Security Operations の RBAC 機能との違いについて説明し、Google Security Operations インスタンスを IAM に移行する手順についても説明します。 IAM を使用して権限を割り当てる方法の例を示し、IAM で使用可能な権限と事前定義ロールの概要についても説明します。
Google Security Operations で承認を構成するために使用される権限とそれらによって生成される監査ログの詳細については、リソース グループ別の権限と API メソッドをご覧ください。
一部の Google Security Operations インスタンスは、元の機能の RBAC 実装から移行中の可能性があります。このドキュメントでは、IAM ではなく、Google Security Operations を使用して構成された、以前に利用可能な機能ベースのロールベースのアクセス制御を指す場合、Google Security Operations RBAC という名前を使用します。 IAM は、IAM で構成する、機能ベースのロールベースのアクセス制御を記述するために使用されます。
Google Security Operations の各権限は、Google Security Operations API のリソースとメソッドに関連付けられています。ユーザーまたはグループに権限が付与されると、ユーザーは Google Security Operations の機能にアクセスし、関連する API メソッドを使用してリクエストを送信できます。
Google Security Operations と IAM の統合の仕組み
IAM を使用するには、Google Security Operations を Google Cloud プロジェクトにバインドし、認証フローの仲介役として Google Cloud Workforce Identity 連携を使用して構成する必要があります。認証フローについては、Google Security Operations をサードパーティの ID プロバイダと統合するをご覧ください。
Google Security Operations は、次の手順を実行して、機能へのアクセスを確認して制御します。
- Google Security Operations にログインした後、ユーザーは Google Security Operations のアプリケーション ページにアクセスします。または、ユーザーは API リクエストを Google セキュリティ オペレーションに送信することもできます。
- Google セキュリティ オペレーションは、そのユーザーに定義された IAM ポリシーで付与されている権限を検証します。
- IAM から認可情報が返されます。ユーザーがアプリケーション ページにアクセスした場合、Google セキュリティ オペレーションは、ユーザーにアクセス権が付与されている機能のみにアクセスできます。
- ユーザーが API リクエストを送信したときに、リクエストされたアクションを実行する権限がない場合、API レスポンスにはエラーが含まれます。それ以外の場合は、標準のレスポンスが返されます。
Google Security Operations には、一連の事前定義ロールと、ユーザーがこの機能にアクセスできるかどうかを制御する権限セットが用意されています。単一の IAM ポリシーは、ウェブ インターフェースと API を使用して機能へのアクセスを制御します。
Google Security Operations の管理者は、ID プロバイダにグループを作成し、アサーションでグループ メンバーシップ情報を渡して、ユーザーとグループを Google Security Operations の IAM の事前定義されたロール{/11に関連付けるように SAML アプリケーションを構成します。 } や、ユーザーが作成したカスタムロールに対するロールを管理できます。
Google Cloud プロジェクトに Google Cloud プロジェクトに、Google セキュリティ オペレーションにバインドされている他の Google Cloud サービスがあり、プロジェクト IAM 管理者ロールを持つユーザーが Google セキュリティ オペレーションのリソースのみを変更できるように制限する場合は、許可ポリシーに対する IAM 条件を追加します。これを行う方法の例については、ユーザーとグループにロールを割り当てるをご覧ください。
管理者は、組織の従業員の役割に基づいて、Google Security Operations の機能へのアクセスを調整します。
始める前に
- Cloud Shell、gcloud CLI コマンド、Google Cloud コンソールに精通していることを確認してください。
- 次のコンセプトを含む、IAM をよく理解します。
- Google Security Operations を Google Cloud プロジェクトにバインドするのすべての手順を行い、Google Security Operations にバインドするプロジェクトを設定します。
- Google Security Operations をサードパーティの ID プロバイダと統合するのすべての手順を実施して、サードパーティの ID プロバイダ(IdP)を介した認証を設定します。
- プロジェクトを Google Security Operations インスタンスにバインドし、Workforce Identity 連携を使用してインスタンスを構成した後、Google Security Operations インスタンスが期待どおりに実行されていることを確認します。Google Security Operations 機能のアクセス制御を確認または構成するをご覧ください。
実装の計画
組織のデプロイ要件をサポートする IAM ポリシーを作成します。Google Security Operations の事前定義ロールまたは作成したカスタムロールを使用できます。
組織要件に対する Google Security Operations の事前定義ロールと権限のリストを確認します。Google セキュリティ運用の各機能にアクセスできる組織のメンバーを特定します。Google セキュリティ運用の事前定義ロールとは異なる IAM ポリシーが組織に必要な場合は、それらの要件をサポートするカスタムロールを作成します。カスタムロールについては、カスタムロールを作成、管理するをご覧ください。
Google セキュリティ運用のロールと権限の概要
以下のセクションでは、その概要を説明します。
Google Security Operations API のメソッドと権限、権限が使用される UI ページ、API の呼び出し時に Cloud Audit Logs に記録される情報については、IAM の Chronicle の権限をご覧ください。して、ソース別にトラフィック データを分類します。
Google Security Operations の権限の最新のリストは、IAM 権限のリファレンスにあります。[権限を検索] セクションで、chronicle
という用語を検索します。
Google SecOps の事前定義ロールの最新リストについては、IAM の基本ロールと事前定義ロールのリファレンスをご覧ください。[事前定義ロール] セクションで、[Chronicle API ロール] サービスを選択するか、chronicle
という用語を検索します。
IAM の Google Security Operations の事前定義ロール
Google セキュリティ オペレーションには、IAM で表示される次の事前定義ロールが用意されています。
IAM の事前定義ロール | Title | 説明 |
---|---|---|
roles/chronicle.admin |
Google Security Operations API 管理者 | グローバル設定を含む、Google Security Operations アプリケーションと API サービスに対する完全アクセス権。 |
roles/chronicle.editor |
Google Security Operations API 編集者 | Google Security Operations アプリケーションと API リソースに対するアクセス権を変更します。 |
roles/chronicle.viewer |
Google Security Operations API 閲覧者 | Google Security Operations アプリケーションと API リソースの読み取り専用アクセス権 |
roles/chronicle.limitedViewer |
Google Security Operations API 制限付き閲覧者 | Google Security Operations のアプリケーションと API リソース(検出エンジンルールと RetroHunt を除く)への読み取り専用アクセス権を付与します。 |
IAM での Google セキュリティ オペレーションの権限
Google Security Operations の権限は、Google Security Operations API メソッドと 1 対 1 で対応しています。各 Google Security Operations 権限により、ウェブ アプリケーションまたは API の使用時に、特定の Google Security Operations 機能に対する特定のアクションが可能になります。IAM で使用される Google Security Operations API は、アルファ版のリリース ステージです。
Google セキュリティ オペレーションの権限名は、SERVICE.FEATURE.ACTION
の形式です。たとえば、権限名 chronicle.dashboards.edit
は次の内容で構成されます。
chronicle
: Google Security Operations API サービス名。dashboards
: 機能名。edit
: 特徴に対して実行できるアクション。
権限名は、Google Security Operations の機能に対して実行できるアクションを表します。すべての Google セキュリティ オペレーションの権限には、chronicle
サービス名が付いています。
ユーザーとグループにロールを割り当てる
以降のセクションでは、IAM ポリシーを作成する際のユースケースの例を示します。<project>
という用語は、Google セキュリティ オペレーションにバインドしたプロジェクトのプロジェクト ID を表します。
Chronicle API を有効にすると、Google Security Operations の事前定義ロールと権限が IAM で使用でき、組織の要件をサポートするポリシーを作成できます。
新しく作成した Google Security Operations インスタンスがある場合は、組織の要件を満たす IAM ポリシーの作成を開始します。
既存の Google Security Operations インスタンスである場合は、インスタンスの IAM への移行について、Google Security Operations を IAM に移行して機能のアクセス制御を行うをご覧ください。
例: 専用のプロジェクトでプロジェクト IAM 管理者のロールを割り当てる
この例では、プロジェクトは Google Security Operations インスタンス専用です。プロジェクト IAM 管理者のロールをユーザーに付与して、ユーザーがプロジェクトの IAM ロール バインディングを付与、変更できるようにします。このユーザーは、プロジェクト内のすべての Google セキュリティ運用のロールと権限を管理し、プロジェクト IAM 管理者のロールによって付与されたタスクを実行できます。
Google Cloud コンソールを使用してロールを割り当てる
次の手順では、Google Cloud コンソールを使用してユーザーにロールを付与する方法について説明します。
- Google Cloud コンソールを開く
- Google Security Operations にバインドされているプロジェクトを選択します。
- [IAM と管理] を選択します。
- [アクセス権を付与] を選択します。[
<project>
にアクセス権を付与] が表示されます。 - [プリンシパルを追加] セクションで、[新しいプリンシパル] フィールドにユーザーのメールアドレスを入力します。
- [ロールの割り当て] セクションの [ロールを選択] メニューで、[プロジェクト IAM 管理者] ロールを選択します。
- [保存] をクリックします。
- [IAM] > [権限] ページを開き、ユーザーに正しいロールが付与されていることを確認します。
Google Cloud CLI を使用してロールを割り当てる
次のコマンドの例は、ユーザーに chronicle.admin
ロールを付与する方法を示しています。
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_EMAIL \
--role=roles/chronicle.admin
次のように置き換えます。
PROJECT_ID
: Google Security Operations インスタンスを Google Cloud プロジェクトにバインドするで作成した、Google Security Operations にバインドされたプロジェクトのプロジェクト ID。プロジェクトを識別するフィールドの詳細については、プロジェクトの作成と管理をご覧ください。WORKFORCE_POOL_ID
: ID プロバイダ用に作成された Workforce プールの識別子。USER_EMAIL
: ユーザーのメールアドレス。
例: 共有プロジェクトでプロジェクト IAM 管理者ロールを割り当てる
この例では、プロジェクトが複数のアプリケーションに使用されます。Google Security Operations インスタンスにバインドされ、Google Security Operations に関係のないサービスを実行します。たとえば、別の目的で使用される Compute Engine リソースなどです。
この場合、ユーザーにプロジェクト IAM 管理者の役割を付与することで、ユーザーはプロジェクトの IAM 役割バインディングの付与と変更、Google Security Operations の構成を行うことができます。また、IAM をロール バインディングに追加して、プロジェクト内の Google セキュリティ オペレーション関連のロールのみにアクセスを制限します。このユーザーは、IAM 条件で指定されたロールのみを付与できます。
IAM 条件の詳細については、IAM Conditions の概要と、条件付きロール バインディングの管理をご覧ください。
Google Cloud コンソールを使用してロールを割り当てる
次の手順では、Google Cloud コンソールを使用してユーザーにロールを付与する方法について説明します。
- Google Cloud コンソールを開く
- Google Security Operations にバインドされているプロジェクトを選択します。
- [IAM と管理] を選択します。
- [アクセス権を付与] を選択します。[
<project>
にアクセス権を付与] が表示されます。 - [
<project>
へのアクセス権を付与する] ダイアログの [プリンシパルを追加] セクションで、[新しいプリンシパル] にユーザーのメールアドレスを入力します。 - [ロールの割り当て] セクションの [ロールを選択] メニューで、[プロジェクト IAM 管理者] ロールを選択します。
- [+ Add IAM Condition] をクリックします。
[設定を追加] ダイアログで、次の情報を入力します。
- [条件] のタイトルを入力します。
- 条件エディタを選択します。
- 次の条件を入力します。
api.getAttribute(iam.googleapis.com/modifiedGrantsByRole,[]).hasOnly([roles/chronicle.googleapis.com/limitedViewer, roles/chronicle.googleapis.com/viewer, roles/chronicle.googleapis.com/editor, roles/chronicle.googleapis.com/admin])
- [条件を追加] ダイアログで [保存] をクリックします。
- [Grant Access to
<project>
] ダイアログで [Save] をクリックします。 - [IAM] > [権限] ページを開き、ユーザーに正しいロールが付与されていることを確認します。
Google Cloud CLI を使用してロールを割り当てる
次のコマンドの例は、ユーザーに chronicle.admin
ロールを付与し、IAM 条件を適用する方法を示しています。
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_EMAIL \
--role=roles/chronicle.admin\
--condition=^:^'expression=api.getAttribute(iam.googleapis.com/modifiedGrantsByRole,[]).hasOnly([roles/chronicle.googleapis.com/limitedViewer, roles/chronicle.googleapis.com/viewer, roles/chronicle.googleapis.com/editor, roles/chronicle.googleapis.com/admin])':'title=Chronicle Role Admin'
次のように置き換えます。
PROJECT_ID
: Google Security Operations インスタンスを Google Cloud プロジェクトにバインドするで作成した、Google Security Operations にバインドされたプロジェクトのプロジェクト ID。プロジェクトを識別するフィールドの詳細については、プロジェクトの作成と管理をご覧ください。WORKFORCE_POOL_ID
: ID プロバイダ用に作成された Workforce プールの識別子。USER_EMAIL
: ユーザーのメールアドレス。
例: ユーザーに Chronicle API 編集者のロールを割り当てる
この状況では、ユーザーが Google Security Operations API リソースへのアクセス権を変更できるようにします。
Google Cloud コンソールを使用してロールを割り当てる
- Google Cloud コンソールを開く
- Google Security Operations にバインドされているプロジェクトを選択します。
- [IAM と管理] を選択します。
- [アクセス権を付与] を選択します。[
<project>
へのアクセス権を付与] ダイアログが開きます。 - [プリンシパルの追加] セクションの [新しいプリンシパル] フィールドに、ユーザーのメールアドレスを入力します。
- [ロールの割り当て] セクションの [ロールを選択] メニューで、[Google Security Operations API 編集者] ロールを選択します。
- [
<project>
へのアクセスを許可する] ダイアログで、[保存] をクリックします。 - [IAM] > [権限] ページを開き、ユーザーに正しいロールが付与されていることを確認します。
Google Cloud CLI を使用してロールを割り当てる
次のコマンドの例は、ユーザーに chronicle.editor
ロールを付与する方法を示しています。
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_EMAIL \
--role=roles/chronicle.editor
次のように置き換えます。
PROJECT_ID
: Google Security Operations インスタンスを Google Cloud プロジェクトにバインドするで作成した、Google Security Operations にバインドされたプロジェクトのプロジェクト ID。プロジェクトを識別するフィールドの詳細については、プロジェクトの作成と管理をご覧ください。WORKFORCE_POOL_ID
: ID プロバイダ用に作成された Workforce プールの識別子。USER_EMAIL
: ユーザーのメールアドレス。
例: カスタムロールを作成してグループに割り当てる
Google Security Operations の事前定義ロールに組織のユースケースに合う権限グループがない場合は、カスタムロールを作成して Google Security Operations の権限をそのカスタムロールに割り当てることができます。カスタムロールをユーザーまたはグループに割り当てます。カスタムロールの詳細については、カスタムロールを作成、管理するをご覧ください。
次の手順では、LimitedAdmin
というカスタムロールを作成できます。
YAML または JSON ファイルを作成して、
LimitedAdmin
というカスタムロールと、このロールに付与される権限を定義します。YAML ファイルの例を次に示します。title: "LimitedAdmin" description: "Admin role with some permissions removed" stage: "ALPHA" includedPermissions: - chronicle.collectors.create - chronicle.collectors.delete - chronicle.collectors.get - chronicle.collectors.list - chronicle.collectors.update - chronicle.dashboards.copy - chronicle.dashboards.create - chronicle.dashboards.delete - chronicle.dashboards.get - chronicle.dashboards.list - chronicle.extensionValidationReports.get - chronicle.extensionValidationReports.list - chronicle.forwarders.create - chronicle.forwarders.delete - chronicle.forwarders.generate - chronicle.forwarders.get - chronicle.forwarders.list - chronicle.forwarders.update - chronicle.instances.get - chronicle.instances.report - chronicle.legacies.legacyGetCuratedRulesTrends - chronicle.legacies.legacyGetRuleCounts - chronicle.legacies.legacyGetRulesTrends - chronicle.legacies.legacyUpdateFinding - chronicle.logTypeSchemas.list - chronicle.multitenantDirectories.get - chronicle.operations.cancel - chronicle.operations.delete - chronicle.operations.get - chronicle.operations.list - chronicle.operations.wait - chronicle.parserExtensions.activate - chronicle.parserExtensions.create - chronicle.parserExtensions.delete - chronicle.parserExtensions.generateKeyValueMappings - chronicle.parserExtensions.get - chronicle.parserExtensions.legacySubmitParserExtension - chronicle.parserExtensions.list - chronicle.parserExtensions.removeSyslog - chronicle.parsers.activate - chronicle.parsers.activateReleaseCandidate - chronicle.parsers.copyPrebuiltParser - chronicle.parsers.create - chronicle.parsers.deactivate - chronicle.parsers.delete - chronicle.parsers.get - chronicle.parsers.list - chronicle.parsers.runParser - chronicle.parsingErrors.list - chronicle.validationErrors.list - chronicle.validationReports.get - resourcemanager.projects.getIamPolicy
カスタムロールを作成します。次の gcloud CLI コマンドの例は、前の手順で作成した YAML ファイルを使用してこのカスタムロールを作成する方法を示しています。
gcloud iam roles create ROLE_NAME \ --project=PROJECT_ID \ --file=YAML_FILE_NAME
次のように置き換えます。
PROJECT_ID
: Google Security Operations インスタンスを Google Cloud プロジェクトにバインドするで作成した、Google Security Operations にバインドされたプロジェクトのプロジェクト ID。プロジェクトを識別するフィールドの詳細については、プロジェクトの作成と管理をご覧ください。YAML_FILE_NAME
: 前の手順で作成したファイルの名前。ROLE_NAME
: YAML ファイルで定義されているカスタムロールの名前。
Google Cloud CLI を使用してカスタムロールを割り当てる
次のコマンドの例は、ユーザーのグループにカスタムロール
limitedAdmin
を付与する方法を示しています。gcloud projects add-iam-policy-binding PROJECT_ID \ --member=principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/group/GROUP_ID \ --role=projects/PROJECT_ID/roles/limitedAdmin
次のように置き換えます。
PROJECT_ID
: Google Security Operations インスタンスを Google Cloud プロジェクトにバインドするで作成した、Google Security Operations にバインドされたプロジェクトのプロジェクト ID。プロジェクトを識別するフィールドの詳細については、プロジェクトの作成と管理をご覧ください。WORKFORCE_POOL_ID
: ID プロバイダ用に作成された Workforce プールの識別子。GROUP_ID
: Workforce Identity 連携で作成されたグループ ID。Workforce Identity 連携で作成されたグループ ID の詳細については、IAM ポリシーで Workforce プールユーザーを表すをご覧ください。GROUP_ID
の詳細については、IAM ポリシーでワーカープール ユーザーを表すをご覧ください。GROUP_ID
。
監査ロギングを確認する
Google Security Operations でのユーザー アクションと Google Security Operations API へのリクエストは、Cloud Audit Logs として記録されます。ログが書き込まれていることを確認するには、次の手順を行います。
- 任意の機能にアクセスする権限を持つユーザーとして Google セキュリティ オペレーションにログインします。詳細については、Google セキュリティ オペレーションにログインするをご覧ください。
- 検索などの操作を実行する。
- Google Cloud コンソールでは、ログ エクスプローラを使用して、Google セキュリティ オペレーションにバインドされた Cloud プロジェクトの監査ログを表示します。Google Security Operations 監査ログのサービス名は
chronicle.googleapis.com
です。
Cloud Audit Logs の表示方法については、Google Security Operations の監査ロギングの情報をご覧ください。
以下は、ユーザー alice@example.com
が Google Security Operations のパーサー拡張機能のリストを表示したときに書き込まれたログの例です。
{
"protoPayload": {
"@type": "type.googleapis.com/google.cloud.audit.AuditLog",
"authenticationInfo": {
"principalEmail": "alice@example.com"
},
"requestMetadata": {
"callerIp": "private",
"callerSuppliedUserAgent": "abc_client",
"requestAttributes": {
"time": "2023-03-27T21:09:43.897772385Z",
"reason": "8uSywAYeWhxBRiBhdXRoIFVwVGljay0-REFUIGV4Y2abcdef",
"auth": {}
},
"destinationAttributes": {}
},
"serviceName": "chronicle.googleapis.com",
"methodName": "google.cloud.chronicle.v1main.ParserService.ListParserExtensions",
"authorizationInfo": [
{
"resource": "projects/100000000000/locations/us/instances/aaaa0aa0-000A-00a0-0000-0000a0aa0a1/logTypes/-",
"permission": "chronicle.parserExtensions.list",
"granted": true,
"resourceAttributes": {}
}
],
"resourceName": "projects/100000000000/locations/us/instances/aaaa0aa0-000A-00a0-0000-0000a0aa0a1/logTypes/-",
"numResponseItems": "12",
"request": {
"@type": "type.googleapis.com/google.cloud.chronicle.v1main.ListParserExtensionsRequest",
"parent": "projects/100000000000/locations/us/instances/aaaa0aa0-000A-00a0-0000-0000a0aa0a1/logTypes/-"
},
"response": {
"@type": "type.googleapis.com/google.cloud.chronicle.v1main.ListParserExtensionsResponse"
}
},
"insertId": "1h0b0e0a0",
"resource": {
"type": "audited_resource",
"labels": {
"project_id": "dev-sys-server001",
"method": "google.cloud.chronicle.v1main.ParserService.ListParserExtensions",
"service": "chronicle.googleapis.com"
}
},
"timestamp": "2023-03-27T21:09:43.744940164Z",
"severity": "INFO",
"logName": "projects/dev-sys-server001/logs/cloudaudit.googleapis.com%2Fdata_access",
"receiveTimestamp": "2023-03-27T21:09:44.863100753Z"
}
機能のアクセス制御のために Google Security Operations を IAM に移行
このセクションの情報を使用して、以前の Google Security Operations のロールベースのアクセス制御機能から既存の Google Security Operations SIEM インスタンスを移行します(Google セキュリティ オペレーションの RBAC )を IAM に渡します。IAM に移行した後、Cloud Audit Logs を使用して Google Security Operations インスタンスのアクティビティを監査することもできます。
Google Security Operations RBAC と IAM の違い
IAM の事前定義ロールの名前は Google セキュリティ オペレーションの RBAC グループに似ていますが、IAM の事前定義ロールは Google セキュリティ オペレーション RBAC グループと同じ機能アクセスを提供しません。事前定義された各 IAM ロールに割り当てられる権限は若干異なります。詳細については、IAM 権限と Google セキュリティ オペレーション RBAC ロールのマッピングをご覧ください。
Google Security Operations の事前定義ロールをそのまま使用することも、各事前定義ロールで定義されている権限を変更することもできます。また、カスタムロールを作成して、異なる権限セットを割り当てることもできます。
Google Security Operations インスタンスを移行したら、Google Cloud コンソールで IAM を使用してロール、権限、IAM ポリシーを管理します。次の Google セキュリティ オペレーション アプリケーションのページは、ユーザーを Google Cloud コンソールに誘導するように変更されています。
- ユーザーとグループ
- ロール
Google Security Operations RBAC では、各権限は機能名とアクションによって記述されます。IAM 権限は、リソース名とメソッドによって記述されます。次の表は、2 つの例(ダッシュボードに関連する例とフィードに関連する例)でその違いを示しています。
ダッシュボードの例: ダッシュボードへのアクセスを制御するために、Google Security Operations RBAC にはダッシュボードで実行できる 5 つのアクションが用意されています。IAM では、追加の
dashboards.list
権限によって同様の権限が付与されます。これにより、ユーザーは利用可能なダッシュボードを一覧表示できます。フィードの例: フィードへのアクセスを制御するために、Google Security Operations RBAC には有効または無効にできる 7 つのアクションが用意されています。IAM には、
feeds.delete
、feeds.create
、feeds.update
、feeds.view
の 4 つがあります。
特徴 | Google Security Operations RBAC での権限 | IAM 権限 | ユーザー アクションの説明 |
---|---|---|---|
ダッシュボード | 編集 | chronicle.dashboards.edit |
ダッシュボードを編集する |
ダッシュボード | コピー | chronicle.dashboards.copy |
Copy dashboard: ダッシュボードのコピー |
ダッシュボード | 作成 | chronicle.dashboards.create |
ダッシュボードの作成 |
ダッシュボード | スケジュール | chronicle.dashboards.schedule |
スケジュール設定されたレポート |
ダッシュボード | 削除 | chronicle.dashboards.delete |
レポートの削除 |
ダッシュボード | 選択していません。これは IAM でのみ使用できます。 | chronicle.dashboards.list |
使用可能なダッシュボードを一覧表示する |
フィード | フィードの削除 | chronicle.feeds.delete |
フィードを削除する |
フィード | CreateFeed | chronicle.feeds.create |
フィードを作成する |
フィード | フィードの更新 | chronicle.feeds.update |
フィードを更新する |
フィード | EnableFeed | chronicle.feeds.update |
フィードを更新する |
フィード | DisableFeed | chronicle.feeds.update |
フィードを更新する |
フィード | ListFeeds | chronicle.feeds.view |
1 つ以上のフィードを返します。 |
フィード | GetFeed | chronicle.feeds.view |
1 つ以上のフィードを返します。 |
既存の Google Security Operations インスタンスを移行する手順
既存の Google Security Operations インスタンスで IAM を有効にするには、次の手順を行います。
- Google セキュリティ オペレーションの担当者に連絡して、既存の RBAC 構成を IAM に移行することを知らせます。Google セキュリティ運用担当者に、次の情報を提供してください。
- Google Security Operations インスタンスにバインドされたプロジェクト ID。これは、Google Security Operations を Google Cloud プロジェクトにバインドしたときに定義したものです。
- フロントエンド パス(Google セキュリティ オペレーションの URL の一部)。
- Workforce プール IDこれは、Workforce Identity 連携を構成したときに定義したものです。
- Google セキュリティ運用担当者から gcloud CLI コマンドを含むファイルが送信されます。これらのコマンドを実行して、既存のアクセス制御ポリシーを同等の IAM ポリシーに移行します。
iam.workforcePoolAdmin
ロールとProject Editor
権限を持つユーザーとして Google Cloud コンソールを開き、Google セキュリティ オペレーションにバインドされたプロジェクトにアクセスします。このユーザーはすでに、Google セキュリティ オペレーションをサードパーティの ID プロバイダと統合した時に特定または作成したものです。- Cloud Shell セッションを開始する
- Google セキュリティ オペレーション担当者から提供されたコマンドを実行して、既存の構成を IAM に移行します。これにより、Google セキュリティ オペレーション RBAC のアクセス制御構成と同等の新しい IAM ポリシーが作成されます。
- すべてのコマンドを実行したら、[IAM] > [権限] ページで IAM ポリシーが正しく移行されたことを確認します。
- IAM ポリシーに問題がなければ、Google セキュリティ運用担当者に連絡して、IAM ポリシーが移行されたことを知らせます。
- Google セキュリティ運用担当者は、Google セキュリティ オペレーション インスタンスで IAM を有効にする手順を実行します。完了後、お知らせいたします。
- Google Security Operations API 管理者ロールを持つユーザーとして Google Security Operations にアクセスできることを確認します。
- Google Security Operations API 管理者の事前定義ロールを持つユーザーとして Google Security Operations にログインします。詳細については、Google セキュリティ オペレーションにログインするをご覧ください。
- [アプリケーション メニュー] > [設定] > [ユーザーとグループ] ページを開きます。次のメッセージが表示されます。*ユーザーとグループを管理するには、Google Cloud コンソールの Identity Access Management(IAM)に移動します。ユーザーとグループの管理に関する詳細*。
- 他のユーザーロールの権限を確認します。
- 別のロールを持つユーザーとして Google Security Operations にログインします。詳細については、Google セキュリティ オペレーションにログインするをご覧ください。
- アプリケーションで使用可能な機能が IAM で定義された権限と一致していることを確認します。
IAM 権限と Google セキュリティ オペレーション RBAC の各ロールのマッピング
次のセクションでは、IAM における Google Security Operations の各事前定義ロールと、各ロールに関連付けられている権限の概要を説明します。また、同様の Google セキュリティ オペレーション RBAC ロールとアクションも特定します。
Chronicle API 制限付き閲覧者
このロールは、Google Security Operations アプリケーションと API リソース(検出エンジンルールと RetroHunt を除く)に対する読み取り専用アクセス権を付与します。役割名は chronicle.limitedViewer
です。
IAM の Google Security Operations API 制限付き閲覧者の事前定義ロールでは、次の権限を使用できます。
IAM 権限 | 次の Google セキュリティ オペレーション RBAC ロールにマッピングされた同等の権限 |
---|---|
chronicle.instances.get |
これは IAM でのみ使用できます。 |
chronicle.dashboards.get |
これは IAM でのみ使用できます。 |
chronicle.dashboards.list |
これは IAM でのみ使用できます。 |
chronicle.multitenantDirectories.get |
これは IAM でのみ使用できます。 |
chronicle.logs.list |
これは IAM でのみ使用できます。 |
Chronicle API 閲覧者
このロールでは、Google Security Operations アプリケーションと API リソースへの読み取り専用アクセスが付与されます。役割名は chronicle.viewer
です。
IAM の Google Security Operations API 閲覧者の事前定義ロールでは、次の権限を使用できます。
Google Security Operations permission | Equivalent permission is mapped to this Google Security Operations RBAC role |
---|---|
chronicle.ruleDeployments.get |
Viewer |
chronicle.ruleDeployments.list |
Viewer |
chronicle.rules.verifyRuleText |
Viewer |
chronicle.rules.get |
Viewer |
chronicle.rules.list |
Viewer |
chronicle.legacies.legacyGetRuleCounts |
Viewer |
chronicle.legacies.legacyGetRulesTrends |
Viewer |
chronicle.rules.listRevisions |
Viewer |
chronicle.legacies.legacyGetCuratedRulesTrends |
Viewer |
chronicle.ruleExecutionErrors.list |
Viewer |
chronicle.curatedRuleSets.get |
Viewer |
chronicle.curatedRuleSetDeployments.get |
Viewer |
chronicle.curatedRuleSets.list |
Viewer |
chronicle.curatedRuleSetDeployments.list |
Viewer |
chronicle.curatedRuleSetCategories.get |
Viewer |
chronicle.curatedRuleSetCategories.list |
Viewer |
chronicle.curatedRuleSetCategories.countAllCuratedRuleSetDetections |
Viewer |
chronicle.curatedRuleSets.countCuratedRuleSetDetections |
Viewer |
chronicle.curatedRules.get |
Viewer |
chronicle.curatedRules.list |
Viewer |
chronicle.referenceLists.list |
Viewer |
chronicle.referenceLists.get |
Viewer |
chronicle.referenceLists.verifyReferenceList |
Viewer |
chronicle.retrohunts.get |
Viewer |
chronicle.retrohunts.list |
Viewer |
chronicle.dashboards.schedule |
Editor |
chronicle.operations.get |
None. This is available in IAM only. |
chronicle.operations.list |
None. This is available in IAM only. |
chronicle.operations.wait |
None. This is available in IAM only. |
chronicle.instances.report |
None. This is available in IAM only. |
chronicle.collectors.get |
None. This is available in IAM only. |
chronicle.collectors.list |
None. This is available in IAM only. |
chronicle.forwarders.generate |
None. This is available in IAM only. |
chronicle.forwarders.get |
None. This is available in IAM only. |
chronicle.forwarders.list |
None. This is available in IAM only. |
Chronicle API 編集者
このロールを使用すると、Google Security Operations のアプリケーションと API リソースへのアクセス権を変更できます。役割名は chronicle.editor
です。
IAM の Google Security Operations API 編集者の事前定義ロールでは、次の権限を使用できます。
Google Security Operations permission | Equivalent permission is mapped to this Google Security Operations RBAC role |
---|---|
chronicle.ruleDeployments.update |
Editor |
chronicle.rules.update |
Editor |
chronicle.rules.create |
Editor |
chronicle.referenceLists.create |
Editor |
chronicle.referenceLists.update |
Editor |
chronicle.rules.runRetrohunt |
Editor |
chronicle.retrohunts.create |
Editor |
chronicle.curatedRuleSetDeployments.batchUpdate |
Editor |
chronicle.curatedRuleSetDeployments.update |
Editor |
chronicle.dashboards.copy |
Editor |
chronicle.dashboards.edit |
Editor |
chronicle.dashboards.create |
Editor |
chronicle.legacies.legacyUpdateFinding |
Editor |
chronicle.dashboards.delete |
Editor |
chronicle.operations.delete |
None. This is available in IAM only. |
Chronicle API 管理者
このロールでは、グローバル設定を含む、Google Security Operations アプリケーションと API サービスに対する完全アクセス権が付与されます。役割名は chronicle.admin
です。
IAM の Google Security Operations API 管理者の事前定義ロールでは、次の権限を使用できます。
Google Security Operations permission | Equivalent permission is mapped to this Google Security Operations RBAC role |
---|---|
chronicle.parserExtensions.delete |
Admin |
chronicle.parsers.copyPrebuiltParser |
Admin |
chronicle.extensionValidationReports.get |
Admin |
chronicle.extensionValidationReports.list |
Admin |
chronicle.validationErrors.list |
Admin |
chronicle.parsers.runParser |
Admin |
chronicle.parserExtensions.get |
Admin |
chronicle.parserExtensions.list |
Admin |
chronicle.validationReports.get |
Admin |
chronicle.parserExtensions.create |
Admin |
chronicle.parserExtensions.removeSyslog |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parserExtensions.activate |
Admin |
chronicle.parsers.activateReleaseCandidate |
Admin |
chronicle.parsers.deactivate |
Admin |
chronicle.parsers.deactivate |
Admin |
chronicle.parserExtensions.generateKeyValuechronicle.Mappings |
Admin |
chronicle.parserExtensions.legacySubmitParserExtension |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parsers.list |
Admin |
chronicle.parsers.create |
Admin |
chronicle.parsers.delete |
Admin |
chronicle.feeds.delete |
Admin |
chronicle.feeds.create |
Admin |
chronicle.feeds.update |
Admin |
chronicle.feeds.enable |
Admin |
chronicle.feeds.disable |
Admin |
chronicle.feeds.list |
Admin |
chronicle.feeds.get |
Admin |
chronicle.feedSourceTypeSchemas.list |
Admin |
chronicle.logTypeSchemas.list |
Admin |
chronicle.operations.cancel |
Editor |
chronicle.collectors.create |
None. This is available in IAM only. |
chronicle.collectors.delete |
None. This is available in IAM only. |
chronicle.collectors.update |
None. This is available in IAM only. |
chronicle.forwarders.create |
None. This is available in IAM only. |
chronicle.forwarders.delete |
None. This is available in IAM only. |
chronicle.forwarders.update |
None. This is available in IAM only. |
chronicle.parsingErrors.list |
None. This is available in IAM only. |