Cloud Storage バケットのポリシー分析情報を確認する

このページでは、バケットレベルのポリシー分析情報(Cloud Storage バケットの権限の使用に関する機械学習ベースの分析結果)を管理する方法について説明します。ポリシーの分析情報により、不要な権限を持つプリンシパルを特定できます。

このページでは、バケットでのポリシーの分析情報に重点を置いて説明します。Recommender は、次のリソースタイプに関するポリシーの分析情報も提供します。

バケットレベルのポリシーの分析情報は、ロールの推奨事項に関連付けられている場合があります。ロールの推奨事項は、バケットレベルのポリシーの分析情報で特定された問題を修正するために実行できるアクションを提案します。

始める前に

必要なロール

バケットレベルのポリシーの分析情報を管理するために必要な権限を取得するには、プロジェクトに対して次の IAM ロールを付与するよう管理者に依頼してください。

  • ストレージ管理者roles/storage.admin
  • gcloud CLI または REST API を使用して、バケットレベルのポリシーの分析情報を管理するには: Service Usage コンシューマ(`roles/serviceusage.serviceUsageConsumer`)

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

これらの事前定義ロールには、バケットレベルのポリシーの分析情報を管理するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

バケットレベルのポリシーの分析情報を管理するには、次の権限が必要です。

  • バケットレベルのポリシーの分析情報を表示するには:
    • recommender.iamPolicyInsights.get
    • recommender.iamPolicyInsights.list
  • バケットレベルのポリシーの分析情報を変更するには: recommender.iamPolicyInsights.update
  • Google Cloud Console でバケットレベルのポリシーの分析情報を管理するには:
    • resourcemanager.projects.get
    • storage.buckets.list
  • gcloud CLI または REST API を使用してバケットレベルのポリシーの分析情報を管理する: serviceusage.services.use

カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。

バケットレベル ポリシーの分析情報を一覧表示する

プロジェクトのバケットレベルのポリシーに関する分析情報をすべて一覧表示するには、次のいずれかの方法を使用します。

Console

  1. Google Cloud コンソールの [バケット] ページに移動します。

    [バケット] に移動

  2. 表内の [セキュリティ分析] 列を見つけます。次の場合:セキュリティ分析列が表示されていない場合は、 列の表示オプションクリックして、セキュリティ分析を選択します。

    この列には、バケットのすべてのポリシーに関する分析情報の概要が表示されます。各概要は、対象のバケットに付与されているすべてのロールの過剰な権限の合計数を示します。

  3. 分析情報を表示するバケットを見つけて、対象行のポリシー分析情報の概要をクリックします。この操作により、[セキュリティに関する推奨事項] ペインが開き、バケットに対してロールを持つすべてのプリンシパル、それらのロール、およびそれらのロールに関連付けられたポリシーの分析情報が一覧表示されます。

    このテーブルでは、ポリシー分析情報の形式は EXCESS/TOTAL excess permissions です。ここで、EXCESS はそのロールでプリンシパルが必要としない権限の数、TOTAL はそのロールの権限の合計数です。

gcloud

プロジェクトのバケットレベルにおけるポリシーの分析情報をすべて表示するには、gcloud recommender insights list コマンドを使用します。

コマンドを実行する前に、次の値を置き換えます。

  • PROJECT_ID: 分析情報を一覧表示するプロジェクトの ID。
  • LOCATION: 分析情報を一覧表示するバケットの場所。
gcloud recommender insights list --insight-type=google.iam.policy.Insight \
    --project=PROJECT_ID \
    --location=LOCATION\
    --filter="insightSubtype:PERMISSIONS_USAGE_STORAGE_BUCKET"

出力には、指定した場所に存在するプロジェクトのバケットレベルのポリシーに関する分析情報がすべて一覧表示されます。次に例を示します。

INSIGHT_ID                            CATEGORY  INSIGHT_STATE  LAST_REFRESH_TIME     SEVERITY  INSIGHT_SUBTYPE                   DESCRIPTION
00dd7eb5-15c2-4fb3-a9b2-1a85f842462b  SECURITY  ACTIVE         2022-05-24T07:00:00Z  CRITICAL  PERMISSIONS_USAGE_STORAGE_BUCKET  2 of the permissions in this role binding were used in the past 90 days.
04307297-f57c-416d-9323-38abac450db0  SECURITY  ACTIVE         2022-05-24T07:00:00Z  LOW       PERMISSIONS_USAGE_STORAGE_BUCKET  2 of the permissions in this role binding were used in the past 90 days.
04845da5-74ba-46b4-a0f3-47d83095c261  SECURITY  ACTIVE         2022-05-24T07:00:00Z  CRITICAL  PERMISSIONS_USAGE_STORAGE_BUCKET  1 of the permissions in this role binding were used in the past 90 days.
0a39f643-d7a8-4c11-b490-fecd74290fb5  SECURITY  ACTIVE         2022-05-24T07:00:00Z  LOW       PERMISSIONS_USAGE_STORAGE_BUCKET  2 of the permissions in this role binding were used in the past 90 days.
0a4cee48-777b-4dea-a2b0-702b70da4b6f  SECURITY  ACTIVE         2022-05-24T07:00:00Z  CRITICAL  PERMISSIONS_USAGE_STORAGE_BUCKET  0 of the permissions in this role binding were used in the past 90 days.
0b2d147c-b26e-4afe-8fab-449c6e793750  SECURITY  ACTIVE         2022-05-24T07:00:00Z  LOW       PERMISSIONS_USAGE_STORAGE_BUCKET  0 of the permissions in this role binding were used in the past 90 days.
0b5eacc5-ba9a-45f6-aea2-bcdc33ce2a2d  SECURITY  ACTIVE         2022-05-24T07:00:00Z  LOW       PERMISSIONS_USAGE_STORAGE_BUCKET  1 of the permissions in this role binding were used in the past 90 days.
0bb3032d-721c-44e8-b464-5293f235281c  SECURITY  ACTIVE         2022-05-24T07:00:00Z  LOW       PERMISSIONS_USAGE_STORAGE_BUCKET  3 of the permissions in this role binding were used in the past 90 days.

REST

Recommender API の insights.list メソッドを使用して、プロジェクトのバケットレベルでのポリシーの分析情報をすべて一覧表示します。

リクエストのデータを使用する前に、次のように置き換えます。

  • PROJECT_ID: 分析情報を一覧表示するプロジェクトの ID。
  • LOCATION: 分析情報を一覧表示するバケットの場所。

HTTP メソッドと URL:

GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.iam.policy.Insight/insights?filter=insightSubtype%20%3D%20PERMISSIONS_USAGE_STORAGE_BUCKET

リクエストを送信するには、次のいずれかのオプションを展開します。

レスポンスには、指定した場所に存在するプロジェクトのバケットレベルのポリシーに関する分析情報がすべて一覧表示されます。次に例を示します。

{
  "insights": [
    {
      "name": "projects/123456789012/locations/us/insightTypes/google.iam.policy.Insight/insights/00dd7eb5-15c2-4fb3-a9b2-1a85f842462b",
      "description": "2 of the permissions in this role binding were used in the past 90 days.",
      "content": {
        "role": "roles/storage.legacyBucketReader",
        "member": "allUsers",
        "condition": {
          "expression": "",
          "title": "",
          "description": "",
          "location": ""
        },
        "exercisedPermissions": [
          {
            "permission": "storage.buckets.get"
          },
          {
            "permission": "storage.objects.list"
          }
        ],
        "inferredPermissions": [],
        "currentTotalPermissionsCount": "3"
      },
      "lastRefreshTime": "2022-05-24T07:00:00Z",
      "observationPeriod": "7772400s",
      "stateInfo": {
        "state": "ACTIVE"
      },
      "category": "SECURITY",
      "associatedRecommendations": [
        {
          "recommendation": "projects/123456789012/locations/us/recommenders/google.iam.policy.Recommender/recommendations/4a31a9d4-5132-4616-8a1f-fb07fad01883"
        }
      ],
      "targetResources": [
        "//storage.googleapis.com/bucket-1"
      ],
      "insightSubtype": "PERMISSIONS_USAGE_STORAGE_BUCKET",
      "etag": "\"2a8784e529b80aea\"",
      "severity": "CRITICAL"
    },
    {
      "name": "projects/123456789012/locations/us/insightTypes/google.iam.policy.Insight/insights/04307297-f57c-416d-9323-38abac450db0",
      "description": "2 of the permissions in this role binding were used in the past 90 days.",
      "content": {
        "role": "roles/storage.legacyBucketReader",
        "member": "projectViewer:my-project",
        "condition": {
          "expression": "",
          "title": "",
          "description": "",
          "location": ""
        },
        "exercisedPermissions": [
          {
            "permission": "storage.buckets.get"
          },
          {
            "permission": "storage.objects.list"
          }
        ],
        "inferredPermissions": [],
        "currentTotalPermissionsCount": "3"
      },
      "lastRefreshTime": "2022-05-24T07:00:00Z",
      "observationPeriod": "7772400s",
      "stateInfo": {
        "state": "ACTIVE"
      },
      "category": "SECURITY",
      "associatedRecommendations": [
        {
          "recommendation": "projects/123456789012/locations/us/recommenders/google.iam.policy.Recommender/recommendations/f3198e63-7f76-462e-a980-8e6370ff32d6"
        }
      ],
      "targetResources": [
        "//storage.googleapis.com/bucket-2"
      ],
      "insightSubtype": "PERMISSIONS_USAGE_STORAGE_BUCKET",
      "etag": "\"5b60b935f27caf2c\"",
      "severity": "LOW"
    }
  ]
}

分析情報のコンポーネントの詳細については、このページのバケットレベルのポリシーの分析情報を確認するをご覧ください。

1 つのバケットレベルのポリシーに関する分析情報を取得する

1 つの分析情報に関する詳細(分析情報の説明、ステータス、推奨事項など)を取得するには、次のいずれかの方法を使用します。

Console

  1. Google Cloud コンソールの [バケット] ページに移動します。

    [バケット] に移動

  2. [セキュリティ分析] 列が表示されていることを確認します。
  3. 表内の [セキュリティ分析] 列を見つけます。この列には、バケットのすべてのポリシーに関する分析情報の概要が表示されます。各概要は、対象のバケットに付与されているすべてのロールの過剰な権限の合計数を示します。

    [セキュリティ分析] 列が表示されていない場合は、 [列の表示オプション] をクリックして、[セキュリティ分析] を選択します。次に、テーブルの列を探します。

  4. 分析情報を表示するバケットを見つけて、対象行のポリシー分析情報の概要をクリックします。これにより、ペインが開き、バケットに対してロールを持つすべてのプリンシパル、それらのロール、およびそれらのロールに関連付けられたポリシーの分析情報が一覧表示されます。
  5. [セキュリティ分析情報] 列で、ポリシーの分析情報をクリックします。ポリシー分析情報の形式は EXCESS/TOTAL excess permissions です。ここで、EXCESS はそのロールでプリンシパルが必要としない権限の数、TOTAL はそのロールの権限の合計数です。

Google Cloud コンソールでパネルが開き、分析情報の詳細が表示されます。

gcloud

分析情報の ID を指定して gcloud recommender insights describe コマンドを使用すると、1 つの分析結果に関する情報を表示できます。

  • INSIGHT_ID: 表示する分析情報の ID。ID を確認するには、プロジェクトの分析情報の一覧を表示します。
  • PROJECT_ID: 分析情報を管理するプロジェクトの ID。
  • LOCATION: 分析情報を取得するバケットの場所。
gcloud recommender insights describe INSIGHT_ID \
    --insight-type=google.iam.policy.Insight \
    --project=PROJECT_ID \
    --location=LOCATION

出力に分析情報の詳細が表示されます。たとえば、次の分析情報は、すべてのユーザー(allUsers)にバケット bucket-1 に対するストレージのレガシー バケット読み取りのロール(roles/storage.legacyBucketReader)が付与されているものの、そのロールで過去 90 日間に使用された権限は 2 つのみであることを示しています。

associatedRecommendations:
- recommendation: projects/123456789012/locations/us/recommenders/google.iam.policy.Recommender/recommendations/4a31a9d4-5132-4616-8a1f-fb07fad01883
category: SECURITY
content:
  condition:
    description: ''
    expression: ''
    location: ''
    title: ''
  currentTotalPermissionsCount: '3'
  exercisedPermissions:
  - permission: storage.buckets.get
  - permission: storage.objects.list
  inferredPermissions: []
  member: allUsers
  role: roles/storage.legacyBucketReader
description: 2 of the permissions in this role binding were used in the past 90 days.
etag: '"2a8784e529b80aea"'
insightSubtype: PERMISSIONS_USAGE_STORAGE_BUCKET
lastRefreshTime: '2022-05-24T07:00:00Z'
name: projects/123456789012/locations/us/insightTypes/google.iam.policy.Insight/insights/00dd7eb5-15c2-4fb3-a9b2-1a85f842462b
observationPeriod: 7772400s
severity: CRITICAL
stateInfo:
  state: ACTIVE
targetResources:
- //storage.googleapis.com/bucket-1

分析情報のコンポーネントの詳細については、このページのバケットレベルのポリシーの分析情報を確認するをご覧ください。

REST

1 つの分析情報を取得するには、Recommender API の insights.get メソッドを使用します。

リクエストのデータを使用する前に、次のように置き換えます。

  • PROJECT_ID: 分析情報を管理するプロジェクトの ID。
  • LOCATION: 分析情報を取得するバケットの場所。
  • INSIGHT_ID: 表示する分析情報の ID。分析情報 ID が不明な場合は、プロジェクト内で分析情報を一覧表示することにより確認できます。分析情報の name フィールドの insights/ より後の部分が分析情報の ID です。

HTTP メソッドと URL:

GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.iam.policy.Insight/insights/INSIGHT_ID

リクエストを送信するには、次のいずれかのオプションを展開します。

レスポンスに分析情報が含まれます。たとえば、次の分析情報は、すべてのユーザー(allUsers)にバケット bucket-1 に対するストレージのレガシー バケット読み取りのロール(roles/storage.legacyBucketReader)が付与されているものの、そのロールで過去 90 日間に使用された権限は 2 つのみであることを示しています。

{
  "name": "projects/123456789012/locations/us/insightTypes/google.iam.policy.Insight/insights/00dd7eb5-15c2-4fb3-a9b2-1a85f842462b",
  "description": "2 of the permissions in this role binding were used in the past 90 days.",
  "content": {
    "role": "roles/storage.legacyBucketReader",
    "member": "allUsers",
    "condition": {
      "expression": "",
      "title": "",
      "description": "",
      "location": ""
    },
    "exercisedPermissions": [
      {
        "permission": "storage.buckets.get"
      },
      {
        "permission": "storage.objects.list"
      }
    ],
    "inferredPermissions": [],
    "currentTotalPermissionsCount": "3"
  },
  "lastRefreshTime": "2022-05-24T07:00:00Z",
  "observationPeriod": "7772400s",
  "stateInfo": {
    "state": "ACTIVE"
  },
  "category": "SECURITY",
  "associatedRecommendations": [
    {
      "recommendation": "projects/123456789012/locations/us/recommenders/google.iam.policy.Recommender/recommendations/4a31a9d4-5132-4616-8a1f-fb07fad01883"
    }
  ],
  "targetResources": [
    "//storage.googleapis.com/bucket-1"
  ],
  "insightSubtype": "PERMISSIONS_USAGE_STORAGE_BUCKET",
  "etag": "\"2a8784e529b80aea\"",
  "severity": "CRITICAL"
}

分析情報のコンポーネントの詳細については、このページのバケットレベルのポリシーの分析情報を確認するをご覧ください。

バケットレベルのポリシーの分析情報を確認する

1 回の分析情報を取得したら、その内容を確認して、ハイライトされたリソース使用量のパターンを確認できます。

Console

Google Cloud コンソールでポリシーの分析情報をクリックすると、分析情報の詳細を示すペインが開きます。詳細の表示方法は、分析情報が推奨事項に関連付けられているかどうかによって異なります。

分析情報が推奨事項に関連付けられている場合は、ペインに推奨事項の詳細が表示されます。

分析情報が推奨事項に関連付けられていない場合、ペインにはロールのすべての権限のリストが表示されます。プリンシパルが使用している権限がリストの先頭に表示され、その後に過剰な権限が表示されます。

gcloud

分析情報のコンテンツはサブタイプによって決まります。バケットレベルのポリシーの分析情報(google.iam.policy.Insight)の分析情報には、PERMISSIONS_USAGE_STORAGE_BUCKET サブタイプがあります。

PERMISSIONS_USAGE_STORAGE_BUCKET の分析情報は次のコンポーネントから構成されます(順番は異なる場合があります)。

  • associatedRecommendations: 分析情報に関連付けられている推奨事項の ID。分析情報に関連付けられた推奨事項がない場合、このフィールドは空白になります。
  • category: IAM 分析情報のカテゴリは常に SECURITY になります。
  • content: 特定のロールのプリンシパル権限の使用状況を報告します。このフィールドには次のコンポーネントが含まれます。

    • condition: プリンシパルにロールを付与するバインディングに関連付けられている条件。条件がない場合、このフィールドには空の条件が含まれます。
    • exercisedPermissions: モニタリング期間中にプリンシパルが使用したロールの権限。
    • inferredPermissions: ML により、使用された権限に基づいて、プリンシパルが必要とする可能性があると Recommender が特定したロールの権限。
    • member: 権限の使用状況が分析されるプリンシパル。
    • role: 権限の使用状況が分析されたロール。
  • description: 人が読める形式の分析情報の概要。
  • etag: 分析情報の現在の状態の一意の ID。分析情報が変わるたびに、新しい etag 値が割り当てられます。

    分析情報の状態を変更するには、既存の分析情報の etag を指定する必要があります。etag を使用すると、最後に取得した後に分析情報が変更されていない場合にのみ、オペレーションを実行できます。

  • insightSubtype: 分析情報のサブタイプ。
  • lastRefreshTime: 分析情報が最後に更新された日付。分析情報の生成に使用されたデータの鮮度を表します。
  • name: 分析情報の名前。次の形式になります。

    projects/PROJECT_ID/locations/LOCATION/insightTypes/google.iam.policy.Insight/insights/INSIGHT_ID

    プレースホルダの値は次のとおりです。

    • PROJECT_ID: 分析情報が生成されたプロジェクトの ID。
    • LOCATION: 分析情報の対象となるバケットの場所。
    • INSIGHT_ID: 分析情報の一意の ID。
  • observationPeriod: 分析情報の期間。分析情報の生成に使用されるソースデータは lastRefreshTime で終了し、lastRefreshTime から observationPeriod を引いた時間に開始します。
  • stateInfo: 分析情報が提案後、多くの状態遷移が発生します。

    • ACTIVE: 分析情報が生成されていますが、アクションが実行されていません。あるいは、分析情報の状態を更新せずに処理が行われています。アクティブな分析情報は、基になるデータが変更されると更新されます。
    • ACCEPTED: 分析情報に基づいて一部の操作が行われています。関連する推奨事項が CLAIMEDSUCCEEDEDFAILED のいずれかにマークされるか、もしくは分析情報が直接承認されると、分析情報は承認された状態になります。分析情報が ACCEPTED 状態の場合、分析情報のコンテンツは変更できません。承認された分析情報は、承認後 90 日間保持されます。
  • targetResources: 分析情報の対象となるバケットの完全なリソース名。例: //storage.googleapis.com/my-bucket

REST

分析情報のコンテンツはサブタイプによって決まります。バケットレベルのポリシーの分析情報(google.iam.policy.Insight)の分析情報には、PERMISSIONS_USAGE_STORAGE_BUCKET サブタイプがあります。

PERMISSIONS_USAGE_STORAGE_BUCKET の分析情報は次のコンポーネントから構成されます(順番は異なる場合があります)。

  • associatedRecommendations: 分析情報に関連付けられている推奨事項の ID。分析情報に関連付けられた推奨事項がない場合、このフィールドは空白になります。
  • category: IAM 分析情報のカテゴリは常に SECURITY になります。
  • content: 特定のロールのプリンシパル権限の使用状況を報告します。このフィールドには次のコンポーネントが含まれます。

    • condition: プリンシパルにロールを付与するバインディングに関連付けられている条件。条件がない場合、このフィールドには空の条件が含まれます。
    • exercisedPermissions: モニタリング期間中にプリンシパルが使用したロールの権限。
    • inferredPermissions: ML により、使用された権限に基づいて、プリンシパルが必要とする可能性があると Recommender が特定したロールの権限。
    • member: 権限の使用状況が分析されるプリンシパル。
    • role: 権限の使用状況が分析されたロール。
  • description: 人が読める形式の分析情報の概要。
  • etag: 分析情報の現在の状態の一意の ID。分析情報が変わるたびに、新しい etag 値が割り当てられます。

    分析情報の状態を変更するには、既存の分析情報の etag を指定する必要があります。etag を使用すると、最後に取得した後に分析情報が変更されていない場合にのみ、オペレーションを実行できます。

  • insightSubtype: 分析情報のサブタイプ。
  • lastRefreshTime: 分析情報が最後に更新された日付。分析情報の生成に使用されたデータの鮮度を表します。
  • name: 分析情報の名前。次の形式になります。

    projects/PROJECT_ID/locations/LOCATION/insightTypes/google.iam.policy.Insight/insights/INSIGHT_ID

    プレースホルダの値は次のとおりです。

    • PROJECT_ID: 分析情報が生成されたプロジェクトの ID。
    • LOCATION: 分析情報の対象となるバケットの場所。
    • INSIGHT_ID: 分析情報の一意の ID。
  • observationPeriod: 分析情報の期間。分析情報の生成に使用されるソースデータは lastRefreshTime で終了し、lastRefreshTime から observationPeriod を引いた時間に開始します。
  • stateInfo: 分析情報が提案後、多くの状態遷移が発生します。

    • ACTIVE: 分析情報が生成されていますが、アクションが実行されていません。あるいは、分析情報の状態を更新せずに処理が行われています。アクティブな分析情報は、基になるデータが変更されると更新されます。
    • ACCEPTED: 分析情報に基づいて一部の操作が行われています。関連する推奨事項が CLAIMEDSUCCEEDEDFAILED のいずれかにマークされるか、もしくは分析情報が直接承認されると、分析情報は承認された状態になります。分析情報が ACCEPTED 状態の場合、分析情報のコンテンツは変更できません。承認された分析情報は、承認後 90 日間保持されます。
  • targetResources: 分析情報の対象となるバケットの完全なリソース名。例: //storage.googleapis.com/my-bucket

バケットレベルのポリシーの分析情報を ACCEPTED とマークする

アクティブな分析情報に基づいてアクションを実行する場合は、その分析情報を ACCEPTED としてマークします。ACCEPTED 状態は、この分析情報に基づいてアクションを実行したことを Recommender API に通知します。この情報は推奨事項の改善に役立ちます。

承諾された分析情報は、ACCEPTED とマークされてから 90 日間保持されます。

Console

分析情報が推奨事項に関連付けられている場合、推奨事項を適用すると、分析情報の状態が ACCEPTED に変更されます。

推奨事項を適用せずに分析情報を ACCEPTED としてマークするには、gcloud CLI または REST API を使用します。

gcloud

分析情報 ID を指定して gcloud recommender insights mark-accepted コマンドを使用し、分析情報を ACCEPTED とマークします。

  • INSIGHT_ID: 表示する分析情報の ID。ID を確認するには、プロジェクトの分析情報の一覧を表示します。
  • PROJECT_ID: 分析情報を管理するプロジェクトの ID。
  • LOCATION: 分析情報を ACCEPTED としてマークするバケットの場所。
  • ETAG: 分析情報のバージョンの ID。etag を取得する方法は次のとおりです。

    1. gcloud recommender insights describe コマンドで分析情報を取得します。
    2. 出力から etag 値を見つけてコピーします(引用符も含む)。例: "d3cdec23cc712bd0"
gcloud recommender insights mark-accepted INSIGHT_ID \
    --insight-type=google.iam.policy.Insight \
    --project=PROJECT_ID \
    --location=LOCATION \
    --etag=ETAG

出力に、ACCEPTED 状態の分析情報が表示されます。

associatedRecommendations:
- recommendation: projects/123456789012/locations/us/recommenders/google.iam.policy.Recommender/recommendations/4a31a9d4-5132-4616-8a1f-fb07fad01883
category: SECURITY
content:
  condition:
    description: ''
    expression: ''
    location: ''
    title: ''
  currentTotalPermissionsCount: '3'
  exercisedPermissions:
  - permission: storage.buckets.get
  - permission: storage.objects.list
  inferredPermissions: []
  member: allUsers
  role: roles/storage.legacyBucketReader
description: 2 of the permissions in this role binding were used in the past 90 days.
etag: '"0187c0362e4bcea7"'
insightSubtype: PERMISSIONS_USAGE_STORAGE_BUCKET
lastRefreshTime: '2022-05-24T07:00:00Z'
name: projects/123456789012/locations/us/insightTypes/google.iam.policy.Insight/insights/00dd7eb5-15c2-4fb3-a9b2-1a85f842462b
observationPeriod: 7772400s
severity: CRITICAL
stateInfo:
  state: ACCEPTED
targetResources:
- //storage.googleapis.com/bucket-1

分析情報の状態の詳細については、このページのバケットレベルのポリシーの分析情報を確認するをご覧ください。

REST

Recommender API の insights.markAccepted メソッドを使用して、分析情報を ACCEPTED としてマークします。

リクエストのデータを使用する前に、次のように置き換えます。

  • PROJECT_ID: 分析情報を管理するプロジェクトの ID。
  • LOCATION: 分析情報を ACCEPTED としてマークするバケットの場所。
  • INSIGHT_ID: 表示する分析情報の ID。分析情報 ID が不明な場合は、プロジェクト内で分析情報を一覧表示することにより確認できます。分析情報の name フィールドの insights/ より後の部分が分析情報の ID です。
  • ETAG: 分析情報のバージョンの ID。etag を取得する方法は次のとおりです。
    1. insights.get メソッドで分析情報を取得します。
    2. レスポンスから etag 値を見つけてコピーします。

HTTP メソッドと URL:

POST https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.iam.policy.Insight/insights/INSIGHT_ID:markAccepted

リクエストの本文(JSON):

{
  "etag": "ETAG"
}

リクエストを送信するには、次のいずれかのオプションを展開します。

レスポンスには、状態が ACCEPTED の分析情報が含まれます。

{
  "name": "projects/123456789012/locations/us/insightTypes/google.iam.policy.Insight/insights/00dd7eb5-15c2-4fb3-a9b2-1a85f842462b",
  "description": "2 of the permissions in this role binding were used in the past 90 days.",
  "content": {
    "role": "roles/storage.legacyBucketReader",
    "member": "allUsers",
    "condition": {
      "expression": "",
      "title": "",
      "description": "",
      "location": ""
    },
    "exercisedPermissions": [
      {
        "permission": "storage.buckets.get"
      },
      {
        "permission": "storage.objects.list"
      }
    ],
    "inferredPermissions": [],
    "currentTotalPermissionsCount": "3"
  },
  "lastRefreshTime": "2022-05-24T07:00:00Z",
  "observationPeriod": "7772400s",
  "stateInfo": {
    "state": "ACCEPTED"
  },
  "category": "SECURITY",
  "associatedRecommendations": [
    {
      "recommendation": "projects/123456789012/locations/us/recommenders/google.iam.policy.Recommender/recommendations/4a31a9d4-5132-4616-8a1f-fb07fad01883"
    }
  ],
  "targetResources": [
    "//storage.googleapis.com/bucket-1"
  ],
  "insightSubtype": "PERMISSIONS_USAGE_STORAGE_BUCKET",
  "etag": "\"9a5485cdc1f05b58\"",
  "severity": "CRITICAL"
}

分析情報の状態の詳細については、このページのバケットレベルのポリシーの分析情報を確認するをご覧ください。

次のステップ