Menemukan akun layanan dengan izin pergerakan lateral

Halaman ini menunjukkan cara mengelola insight pergerakan lateral, yang mengidentifikasi peran yang memungkinkan akun layanan dalam satu project untuk meniru akun layanan di project lain. Untuk informasi selengkapnya tentang insight gerakan lateral, lihat Cara insight gerakan lateral dihasilkan.

Insight pergerakan lateral terkadang ditautkan ke rekomendasi peran. Rekomendasi peran menyarankan tindakan yang dapat Anda lakukan untuk memperbaiki masalah yang diidentifikasi oleh insight pergerakan lateral.

Sebelum memulai

Peran yang diperlukan

Untuk mendapatkan izin yang Anda perlukan guna mengelola insight pergerakan lateral, minta administrator untuk memberi Anda peran IAM berikut pada project, folder, atau organisasi yang insight-nya ingin Anda kelola:

Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Peran bawaan ini berisi izin yang diperlukan untuk mengelola insight pergerakan lateral. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk mengelola insight pergerakan lateral:

  • Untuk melihat insight gerakan lateral:
    • recommender.iamPolicyLateralMovementInsights.get
    • recommender.iamPolicyLateralMovementInsights.list
  • Untuk mengubah insight gerakan lateral: recommender.iamPolicyLateralMovementInsights.update

Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Mencantumkan insight gerakan lateral

Untuk mencantumkan semua insight pergerakan lateral untuk project, folder, atau organisasi Anda, gunakan salah satu metode berikut:

Konsol

  1. Di konsol Google Cloud, buka halaman IAM.

    Buka IAM

  2. Pilih project, folder, atau organisasi.

Kolom Insight keamanan menampilkan semua insight terkait keamanan untuk project Anda, termasuk insight pergerakan lateral. Insight gerakan lateral memiliki bentuk N service account impersonations, dengan N adalah jumlah akun layanan yang dapat ditiru oleh akun layanan dalam binding peran.

gcloud

Gunakan perintah gcloud recommender insights list untuk melihat semua insight gerakan lateral untuk project, folder, atau organisasi Anda.

Sebelum menjalankan perintah, ganti nilai berikut:

  • RESOURCE_TYPE: Jenis resource yang insight-nya ingin Anda cantumkan. Gunakan nilai project, folder, atau organization.
  • RESOURCE_ID: ID project, folder, atau organisasi yang insight-nya ingin Anda cantumkan.
gcloud recommender insights list --insight-type=google.iam.policy.LateralMovementInsight \
    --RESOURCE_TYPE=RESOURCE_ID \
    --location=global

Output ini mencantumkan semua insight pergerakan lateral untuk project, folder, atau organisasi Anda. Contoh:

INSIGHT_ID                            CATEGORY  INSIGHT_STATE  LAST_REFRESH_TIME     SEVERITY  INSIGHT_SUBTYPE              DESCRIPTION
046f8b89-bcee-46cd-9ac4-06818ed5273a  SECURITY  ACTIVE         2022-05-24T07:00:00Z  LOW       CROSS_PROJECT_IMPERSONATION  Service account sa-1@another-project.iam.gserviceaccount.com from another project can impersonate 2 service account(s) under this project.
1328df82-5af2-4493-9850-d8ede4e72b27  SECURITY  ACTIVE         2022-05-24T07:00:00Z  LOW       CROSS_PROJECT_IMPERSONATION  Service account sa-2@another-project.iam.gserviceaccount.com from another project can impersonate 1 service account(s) under this project.
17f50957-333c-4f21-86c1-6a62216b309e  SECURITY  ACTIVE         2022-05-24T07:00:00Z  LOW       CROSS_PROJECT_IMPERSONATION  Service account sa-3@another-project.iam.gserviceaccount.com from another project can impersonate 1 service account(s) under this project.
187200d2-b42c-48fb-86d7-c2746a87fed2  SECURITY  ACTIVE         2022-05-24T07:00:00Z  LOW       CROSS_PROJECT_IMPERSONATION  Service account sa-4@another-project.iam.gserviceaccount.com from another project can impersonate 32 service account(s) under this project.
1f1740a4-ff98-4f64-99a4-5ef5df5a2097  SECURITY  ACTIVE         2022-05-24T07:00:00Z  LOW       CROSS_PROJECT_IMPERSONATION  Service account sa-5@another-project.iam.gserviceaccount.com from another project can impersonate 1 service account(s) under this project.

REST

Metode Recommender API insights.list mencantumkan semua insight pergerakan lateral untuk project, folder, atau organisasi Anda.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • RESOURCE_TYPE: Jenis resource yang ingin Anda cantumkan insight-nya. Gunakan nilai projects, folders, atau organizations.
  • RESOURCE_ID: ID project, folder, atau organisasi yang insight-nya ingin Anda cantumkan.
  • PROJECT_ID: Project ID Google Cloud Anda Project ID adalah string alfanumerik, seperti my-project.

Metode HTTP dan URL:

GET https://recommender.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/insightTypes/google.iam.policy.LateralMovementInsight/insights

Untuk mengirim permintaan, perluas salah satu opsi berikut:

Respons mencantumkan semua insight pergerakan lateral untuk project, folder, atau organisasi Anda. Contoh:

{
  "insights": [
    {
      "name": "projects/123456789012/locations/global/insightTypes/google.iam.policy.LateralMovementInsight/insights/13088eec-9573-415f-81a7-46e1a260e860",
      "description": "Service account sa-1@another-project.iam.gserviceaccount.com from another project can impersonate 2 service account(s) under this project.",
      "content": {
        "impersonator": {
          "serviceAccount": "sa-1@another-project.iam.gserviceaccount.com",
          "serviceAccountOwner": "//cloudresourcemanager.googleapis.com/projects/987654321098",
          "isGoogleManaged": false
        },
        "targetServiceAccounts": [
          "target-service-account-1@this-project.iam.gserviceaccount.com",
          "target-service-account-2@this-project.iam.gserviceaccount.com"
        ],
        "impersonationPolicy": {
          "resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
          "role": "roles/editor",
          "member": "serviceAccount:sa-1@another-project.iam.gserviceaccount.com",
          "condition": {
            "expression": "",
            "title": "",
            "description": "",
            "location": ""
          }
        },
        "impersonationPermissionUsage": [
          {
            "permission": "iam.serviceAccounts.actAs"
            "used": false
          }
        ],
        "hasPermissionUsageData": true
      },
      "lastRefreshTime": "2022-05-24T07:00:00Z",
      "observationPeriod": "7776000s",
      "stateInfo": {
        "state": "ACTIVE"
      },
      "category": "SECURITY",
      "associatedRecommendations": [
        {
          "recommendation": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/03f3dc20-f9e7-4502-95ab-bf7d3164846f"
        }
      ],
      "targetResources": [
        "//cloudresourcemanager.googleapis.com/projects/123456789012"
      ],
      "insightSubtype": "CROSS_PROJECT_IMPERSONATION",
      "etag": "\"f48fa6a1b15c7741\"",
      "severity": "LOW"
    }
  ]
}

Untuk mempelajari lebih lanjut komponen insight, lihat Meninjau insight gerakan lateral di halaman ini.

Mendapatkan satu insight gerakan lateral

Untuk mendapatkan informasi selengkapnya tentang satu insight, termasuk deskripsi, status, dan rekomendasi apa pun yang terkait dengan insight tersebut, gunakan salah satu metode berikut:

Konsol

  1. Di konsol Google Cloud, buka halaman IAM.

    Buka IAM

  2. Pilih project, folder, atau organisasi.
  3. Di kolom Insight keamanan, klik insight gerakan lateral. Insight gerakan lateral memiliki bentuk N service account impersonations, dengan N adalah jumlah akun layanan yang dapat ditiru oleh akun layanan dalam binding peran.

Konsol Google Cloud akan membuka panel yang menampilkan detail insight.

gcloud

Gunakan perintah gcloud recommender insights describe dengan ID insight Anda untuk melihat informasi tentang satu insight.

  • INSIGHT_ID: ID insight yang ingin Anda lihat. Untuk menemukan ID, cantumkan insight untuk project, folder, atau organisasi Anda.
  • RESOURCE_TYPE: Jenis resource yang insight-nya ingin Anda kelola. Gunakan nilai project, folder, atau organization.
  • RESOURCE_ID: ID project, folder, atau organisasi yang insight-nya ingin Anda kelola.
gcloud recommender insights describe INSIGHT_ID \
    --insight-type=google.iam.policy.LateralMovementInsight \
    --RESOURCE_TYPE=RESOURCE_ID \
    --location=global

Output akan menampilkan insight secara mendetail. Misalnya, insight berikut menunjukkan bahwa kebijakan IAM di project 123456789012 mengizinkan sa-1@another-project.iam.gserviceaccount.com meniru identitas target-service-account-1@this-project.iam.gserviceaccount.com dan target-service-account-2@this-project.iam.gserviceaccount.com.

associatedRecommendations:
- recommendation: projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/03f3dc20-f9e7-4502-95ab-bf7d3164846f
category: SECURITY
content:
  hasPermissionUsageData: true
  impersonationPermissionUsage:
  - permission: iam.serviceAccounts.actAs
    used: false
  impersonationPolicy:
    condition:
      description: ''
      expression: ''
      location: ''
      title: ''
    member: serviceAccount:sa-1@another-project.iam.gserviceaccount.com
    resource: //cloudresourcemanager.googleapis.com/projects/123456789012
    role: roles/editor
  impersonator:
    isGoogleManaged: false
    serviceAccount: sa-1@another-project.iam.gserviceaccount.com
    serviceAccountOwner: //cloudresourcemanager.googleapis.com/projects/987654321098
  targetServiceAccounts:
  - target-service-account-1@this-project.iam.gserviceaccount.com
  - target-service-account-2@this-project.iam.gserviceaccount.com
description: Service account sa-1@another-project.iam.gserviceaccount.com from another project can impersonate 2 service account(s) under this project.
etag: '"f48fa6a1b15c7741"'
insightSubtype: CROSS_PROJECT_IMPERSONATION
lastRefreshTime: '2022-05-24T07:00:00Z'
name: projects/123456789012/locations/global/insightTypes/google.iam.policy.LateralMovementInsight/insights/13088eec-9573-415f-81a7-46e1a260e860
observationPeriod: 7776000s
severity: LOW
stateInfo:
  state: ACTIVE
targetResources:
- //cloudresourcemanager.googleapis.com/projects/123456789012

Untuk mempelajari lebih lanjut komponen insight, lihat Meninjau insight gerakan lateral di halaman ini.

REST

Metode insights.get Recommender API mendapatkan satu insight.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • RESOURCE_TYPE: Jenis resource yang insight-nya ingin Anda kelola. Gunakan nilai projects, folders, atau organizations.
  • RESOURCE_ID: ID project, folder, atau organisasi yang insight-nya ingin Anda kelola.
  • INSIGHT_ID: ID insight yang ingin Anda lihat. Jika tidak mengetahui insight ID, Anda dapat menemukannya dengan mencantumkan insight di project, folder, atau organisasi Anda. ID insight adalah semuanya setelah insights/ di kolom name untuk insight.
  • PROJECT_ID: Project ID Google Cloud Anda Project ID adalah string alfanumerik, seperti my-project.

Metode HTTP dan URL:

GET https://recommender.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/insightTypes/google.iam.policy.LateralMovementInsight/insights/INSIGHT_ID

Untuk mengirim permintaan, perluas salah satu opsi berikut:

Responsnya berisi insight. Misalnya, insight berikut menunjukkan bahwa kebijakan IAM di project 123456789012 mengizinkan sa-1@another-project.iam.gserviceaccount.com meniru identitas target-service-account-1@this-project.iam.gserviceaccount.com dan target-service-account-2@this-project.iam.gserviceaccount.com.

{
  "name": "projects/123456789012/locations/global/insightTypes/google.iam.policy.LateralMovementInsight/insights/13088eec-9573-415f-81a7-46e1a260e860",
  "description": "Service account sa-1@another-project.iam.gserviceaccount.com from another project can impersonate 2 service account(s) under this project.",
  "content": {
    "impersonator": {
      "serviceAccount": "sa-1@another-project.iam.gserviceaccount.com",
      "serviceAccountOwner": "//cloudresourcemanager.googleapis.com/projects/987654321098",
      "isGoogleManaged": false
    },
    "targetServiceAccounts": [
      "target-service-account-1@this-project.iam.gserviceaccount.com",
      "target-service-account-2@this-project.iam.gserviceaccount.com"
    ],
    "impersonationPolicy": {
      "resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
      "role": "roles/editor",
      "member": "serviceAccount:sa-1@another-project.iam.gserviceaccount.com",
      "condition": {
        "expression": "",
        "title": "",
        "description": "",
        "location": ""
      }
    },
    "impersonationPermissionUsage": [
      {
        "permission": "iam.serviceAccounts.actAs"
        "used": false
      }
    ],
    "hasPermissionUsageData": true
  },
  "lastRefreshTime": "2022-05-24T07:00:00Z",
  "observationPeriod": "7776000s",
  "stateInfo": {
    "state": "ACTIVE"
  },
  "category": "SECURITY",
  "associatedRecommendations": [
    {
      "recommendation": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/03f3dc20-f9e7-4502-95ab-bf7d3164846f"
    }
  ],
  "targetResources": [
    "//cloudresourcemanager.googleapis.com/projects/123456789012"
  ],
  "insightSubtype": "CROSS_PROJECT_IMPERSONATION",
  "etag": "\"f48fa6a1b15c7741\"",
  "severity": "LOW"
}

Untuk mempelajari lebih lanjut komponen insight, lihat Meninjau insight gerakan lateral di halaman ini.

Meninjau insight gerakan lateral

Setelah mendapatkan satu insight, Anda dapat meninjau kontennya untuk memahami pola penggunaan resource yang disoroti.

Konsol

Saat Anda mengklik insight pergerakan lateral di konsol Google Cloud, konsol Google Cloud akan membuka panel yang menampilkan detail insight. Tampilan detail ini bergantung pada apakah insight dikaitkan dengan rekomendasi.

Jika insight dikaitkan dengan rekomendasi, panel akan menampilkan detail rekomendasi.

Jika insight tidak dikaitkan dengan rekomendasi, panel akan menampilkan hal berikut:

  • Project asal akun layanan: Project tempat akun layanan dengan izin peniruan identitas dibuat.

  • Akun layanan yang dapat disamarkan dalam project ini. Daftar semua akun layanan dalam project saat ini yang dapat ditiru identitasnya oleh akun layanan dengan izin peniruan identitas.

  • Izin yang mengizinkan peniruan identitas dalam project: Daftar izin peniruan identitas yang dimiliki akun layanan.

  • Izin saat ini: Daftar semua izin akun layanan.

gcloud

Konten insight ditentukan oleh subjenisnya. Insight gerakan lateral (google.iam.policy.LateralMovementInsight) memiliki subjenis CROSS_PROJECT_IMPERSONATION.

Insight CROSS_PROJECT_IMPERSONATION memiliki komponen berikut, tidak harus dalam urutan ini:

  • associatedRecommendations: ID untuk rekomendasi apa pun yang terkait dengan insight. Jika tidak ada rekomendasi yang terkait dengan insight, kolom ini akan kosong.
  • category: Kategori untuk insight IAM selalu SECURITY.
  • content: Melaporkan detail kemampuan akun layanan untuk meniru akun layanan di project lain. Kolom ini berisi komponen berikut:

    • hasPermissionUsageData: Nilai boolean yang menunjukkan apakah ada data penggunaan izin untuk binding peran ini. Data penggunaan izin menunjukkan apakah izin dalam binding peran telah digunakan. Data ini tidak tersedia untuk binding peran bersyarat.
    • impersonationPermissionUsage: Daftar izin peniruan identitas dan informasi penggunaannya. Jika izin digunakan dalam 90 hari terakhir, izin tersebut dianggap digunakan. Jika tidak, akun tersebut dianggap tidak digunakan.

      Jika hasPermissionUsageData bernilai salah, kolom impersonationPermissionUsage akan kosong.

    • impersonationPolicy: Informasi tentang binding peran yang memberikan izin peniruan identitas akun layanan.
    • impersonator: Detail tentang akun layanan yang memiliki izin untuk meniru identitas akun layanan di project Anda, termasuk hal berikut:
      • isGoogleManaged: Apakah akun layanan dimiliki dan dikelola oleh Google.
      • serviceAccount: Alamat email akun layanan.
      • serviceAccountOwner: Project yang memiliki akun layanan. Jika Google memiliki akun layanan, nilai kolom ini adalah Google managed. Jika project di luar organisasi Anda memiliki akun layanan, nilai kolom ini adalah Unknown to your org.
    • targetServiceAccounts: Daftar akun layanan yang izinnya untuk meniru identitas dimiliki oleh akun layanan di kolom impersonator. Jika peniru identitas dapat meniru identitas lebih dari 1.500 akun layanan, daftarnya akan kosong. Untuk mempelajari jumlah akun layanan yang dapat ditiru identitasnya oleh peniru, lihat kolom description.
  • description: Ringkasan insight yang dapat dibaca manusia.
  • etag: ID unik untuk status insight saat ini. Setiap kali insight berubah, nilai etag baru akan ditetapkan.

    Untuk mengubah status insight, Anda harus memberikan etag insight yang ada. Penggunaan etag membantu memastikan bahwa setiap operasi hanya dilakukan jika insight belum berubah sejak Anda terakhir kali mengambilnya.

  • insightSubtype: Subjenis insight.
  • lastRefreshTime: Tanggal saat insight terakhir diperbarui, yang menunjukkan keaktualan data yang digunakan untuk menghasilkan insight.
  • name: Nama insight, dalam format berikut:

    RESOURCE_TYPE/RESOURCE_ID/locations/global/insightTypes/google.iam.policy.LateralMovementInsight/insights/INSIGHT_ID

    Placeholder memiliki nilai berikut:

    • RESOURCE_TYPE: Jenis resource yang insight-nya dihasilkan.
    • RESOURCE_ID: ID project, folder, atau organisasi tempat insight dihasilkan.
    • INSIGHT_ID: ID unik untuk insight.
  • observationPeriod: Jangka waktu yang mengarah ke insight. Data sumber yang digunakan untuk menghasilkan insight berakhir pada lastRefreshTime dan dimulai pada lastRefreshTime dikurangi observationPeriod.
  • severity: Tingkat keparahan insight. Semua insight gerakan lateral memiliki tingkat keparahan LOW.
  • stateInfo: Insight akan melalui beberapa transisi status setelah diusulkan:

    • ACTIVE: Insight telah dibuat, tetapi tidak ada tindakan yang dilakukan, atau tindakan telah dilakukan tanpa memperbarui status insight. Insight aktif diperbarui saat data pokok berubah.
    • ACCEPTED: Beberapa tindakan telah dilakukan berdasarkan insight. Insight akan diterima jika rekomendasi terkait ditandai CLAIMED, SUCCEEDED, atau FAILED, atau insight diterima secara langsung. Saat insight berada dalam status ACCEPTED, konten insight tidak dapat berubah. Insight yang diterima disimpan selama 90 hari setelah diterima.
  • targetResources: Nama resource lengkap organisasi, folder, project, atau akun layanan yang menjadi tujuan insight. Misalnya, //cloudresourcemanager.googleapis.com/projects/123456789012.

REST

Konten insight ditentukan oleh subjenisnya. Insight gerakan lateral (google.iam.policy.LateralMovementInsight) memiliki subjenis CROSS_PROJECT_IMPERSONATION.

Insight CROSS_PROJECT_IMPERSONATION memiliki komponen berikut, tidak harus dalam urutan ini:

  • associatedRecommendations: ID untuk rekomendasi apa pun yang terkait dengan insight. Jika tidak ada rekomendasi yang terkait dengan insight, kolom ini akan kosong.
  • category: Kategori untuk insight IAM selalu SECURITY.
  • content: Melaporkan detail kemampuan akun layanan untuk meniru akun layanan di project lain. Kolom ini berisi komponen berikut:

    • hasPermissionUsageData: Nilai boolean yang menunjukkan apakah ada data penggunaan izin untuk binding peran ini. Data penggunaan izin menunjukkan apakah izin dalam binding peran telah digunakan. Data ini tidak tersedia untuk binding peran bersyarat.
    • impersonationPermissionUsage: Daftar izin peniruan identitas dan informasi penggunaannya. Jika izin digunakan dalam 90 hari terakhir, izin tersebut dianggap digunakan. Jika tidak, akun tersebut dianggap tidak digunakan.

      Jika hasPermissionUsageData bernilai salah, kolom impersonationPermissionUsage akan kosong.

    • impersonationPolicy: Informasi tentang binding peran yang memberikan izin peniruan identitas akun layanan.
    • impersonator: Detail tentang akun layanan yang memiliki izin untuk meniru identitas akun layanan di project Anda, termasuk hal berikut:
      • isGoogleManaged: Apakah akun layanan dimiliki dan dikelola oleh Google.
      • serviceAccount: Alamat email akun layanan.
      • serviceAccountOwner: Project yang memiliki akun layanan. Jika Google memiliki akun layanan, nilai kolom ini adalah Google managed. Jika project di luar organisasi Anda memiliki akun layanan, nilai kolom ini adalah Unknown to your org.
    • targetServiceAccounts: Daftar akun layanan yang izinnya untuk meniru identitas dimiliki oleh akun layanan di kolom impersonator. Jika peniru identitas dapat meniru identitas lebih dari 1.500 akun layanan, daftarnya akan kosong. Untuk mempelajari jumlah akun layanan yang dapat ditiru identitasnya oleh peniru, lihat kolom description.
  • description: Ringkasan insight yang dapat dibaca manusia.
  • etag: ID unik untuk status insight saat ini. Setiap kali insight berubah, nilai etag baru akan ditetapkan.

    Untuk mengubah status insight, Anda harus memberikan etag insight yang ada. Penggunaan etag membantu memastikan bahwa setiap operasi hanya dilakukan jika insight belum berubah sejak Anda terakhir kali mengambilnya.

  • insightSubtype: Subjenis insight.
  • lastRefreshTime: Tanggal saat insight terakhir diperbarui, yang menunjukkan keaktualan data yang digunakan untuk menghasilkan insight.
  • name: Nama insight, dalam format berikut:

    RESOURCE_TYPE/RESOURCE_ID/locations/global/insightTypes/google.iam.policy.LateralMovementInsight/insights/INSIGHT_ID

    Placeholder memiliki nilai berikut:

    • RESOURCE_TYPE: Jenis resource yang insight-nya dihasilkan.
    • RESOURCE_ID: ID project, folder, atau organisasi tempat insight dihasilkan.
    • INSIGHT_ID: ID unik untuk insight.
  • observationPeriod: Jangka waktu yang mengarah ke insight. Data sumber yang digunakan untuk menghasilkan insight berakhir pada lastRefreshTime dan dimulai pada lastRefreshTime dikurangi observationPeriod.
  • severity: Tingkat keparahan insight. Semua insight gerakan lateral memiliki tingkat keparahan LOW.
  • stateInfo: Insight akan melalui beberapa transisi status setelah diusulkan:

    • ACTIVE: Insight telah dibuat, tetapi tidak ada tindakan yang dilakukan, atau tindakan telah dilakukan tanpa memperbarui status insight. Insight aktif diperbarui saat data pokok berubah.
    • ACCEPTED: Beberapa tindakan telah dilakukan berdasarkan insight. Insight akan diterima jika rekomendasi terkait ditandai CLAIMED, SUCCEEDED, atau FAILED, atau insight diterima secara langsung. Saat insight berada dalam status ACCEPTED, konten insight tidak dapat berubah. Insight yang diterima disimpan selama 90 hari setelah diterima.
  • targetResources: Nama resource lengkap organisasi, folder, project, atau akun layanan yang menjadi tujuan insight. Misalnya, //cloudresourcemanager.googleapis.com/projects/123456789012.

Menandai insight gerakan lateral sebagai ACCEPTED

Jika Anda mengambil tindakan berdasarkan insight aktif, Anda dapat menandai insight tersebut sebagai ACCEPTED. Status ACCEPTED memberi tahu Recommender API bahwa Anda telah mengambil tindakan berdasarkan insight ini, yang membantu meningkatkan kualitas rekomendasi Anda.

Insight yang diterima disimpan selama 90 hari setelah ditandai sebagai ACCEPTED.

Konsol

Jika insight dikaitkan dengan rekomendasi, menerapkan rekomendasi akan mengubah status insight menjadi ACCEPTED.

Untuk menandai insight sebagai ACCEPTED tanpa menerapkan rekomendasi, gunakan gcloud CLI atau REST API.

gcloud

Gunakan perintah gcloud recommender insights mark-accepted dengan ID insight Anda untuk menandai insight sebagai ACCEPTED.

  • INSIGHT_ID: ID insight yang ingin Anda lihat. Untuk menemukan ID, cantumkan insight untuk project, folder, atau organisasi Anda.
  • RESOURCE_TYPE: Jenis resource yang insight-nya ingin Anda kelola. Gunakan nilai project, folder, atau organization.
  • RESOURCE_ID: ID project, folder, atau organisasi yang insight-nya ingin Anda kelola.
  • ETAG: ID untuk versi insight. Untuk mendapatkan etag, lakukan hal berikut:

    1. Dapatkan insight menggunakan perintah gcloud recommender insights describe.
    2. Temukan dan salin nilai etag dari output, termasuk tanda kutip yang mengapit. Contoh, "d3cdec23cc712bd0".
gcloud recommender insights mark-accepted INSIGHT_ID \
    --insight-type=google.iam.policy.LateralMovementInsight \
    --RESOURCE_TYPE=RESOURCE_ID \
    --location=global \
    --etag=ETAG

Output menampilkan insight, sekarang dengan status ACCEPTED:

associatedRecommendations:
- recommendation: projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/03f3dc20-f9e7-4502-95ab-bf7d3164846f
category: SECURITY
content:
  hasPermissionUsageData: true
  impersonationPermissionUsage:
  - permission: iam.serviceAccounts.actAs
    used: false
  impersonationPolicy:
    condition:
      description: ''
      expression: ''
      location: ''
      title: ''
    member: serviceAccount:sa-1@another-project.iam.gserviceaccount.com
    resource: //cloudresourcemanager.googleapis.com/projects/123456789012
    role: roles/editor
  impersonator:
    isGoogleManaged: false
    serviceAccount: sa-1@another-project.iam.gserviceaccount.com
    serviceAccountOwner: //cloudresourcemanager.googleapis.com/projects/987654321098
  targetServiceAccounts:
  - target-service-account-1@this-project.iam.gserviceaccount.com
  - target-service-account-2@this-project.iam.gserviceaccount.com
description: Service account sa-1@another-project.iam.gserviceaccount.com from another project can impersonate 2 service account(s) under this project.
etag: '"f48fa6a1b15c7741"'
insightSubtype: CROSS_PROJECT_IMPERSONATION
lastRefreshTime: '2022-05-24T07:00:00Z'
name: projects/123456789012/locations/global/insightTypes/google.iam.policy.LateralMovementInsight/insights/13088eec-9573-415f-81a7-46e1a260e860
observationPeriod: 7776000s
severity: LOW
stateInfo:
  state: ACCEPTED
targetResources:
- //cloudresourcemanager.googleapis.com/projects/123456789012

Untuk mempelajari info status insight lebih lanjut, lihat Meninjau insight gerakan lateral di halaman ini.

REST

Metode insights.markAccepted Recommender API menandai insight sebagai ACCEPTED.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • RESOURCE_TYPE: Jenis resource yang insight-nya ingin Anda kelola. Gunakan nilai projects, folders, atau organizations.
  • RESOURCE_ID: ID project, folder, atau organisasi yang insight-nya ingin Anda kelola.
  • INSIGHT_ID: ID insight yang ingin Anda lihat. Jika tidak mengetahui insight ID, Anda dapat menemukannya dengan mencantumkan insight di project, folder, atau organisasi Anda. ID insight adalah semuanya setelah insights/ di kolom name untuk insight.
  • ETAG: ID untuk versi insight. Untuk mendapatkan etag, lakukan hal berikut:
    1. Dapatkan insight menggunakan metode insights.get.
    2. Temukan dan salin nilai etag dari respons.
  • PROJECT_ID: Project ID Google Cloud Anda Project ID adalah string alfanumerik, seperti my-project.

Metode HTTP dan URL:

POST https://recommender.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/insightTypes/google.iam.policy.LateralMovementInsight/insights/INSIGHT_ID:markAccepted

Meminta isi JSON:

{
  "etag": "ETAG"
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Responsnya berisi insight, sekarang dengan status ACCEPTED:

{
  "name": "projects/123456789012/locations/global/insightTypes/google.iam.policy.LateralMovementInsight/insights/13088eec-9573-415f-81a7-46e1a260e860",
  "description": "Service account sa-1@another-project.iam.gserviceaccount.com from another project can impersonate 2 service account(s) under this project.",
  "content": {
    "impersonator": {
      "serviceAccount": "sa-1@another-project.iam.gserviceaccount.com",
      "serviceAccountOwner": "//cloudresourcemanager.googleapis.com/projects/987654321098",
      "isGoogleManaged": false
    },
    "targetServiceAccounts": [
      "target-service-account-1@this-project.iam.gserviceaccount.com",
      "target-service-account-2@this-project.iam.gserviceaccount.com"
    ],
    "impersonationPolicy": {
      "resource": "//cloudresourcemanager.googleapis.com/projects/123456789012",
      "role": "roles/editor",
      "member": "serviceAccount:sa-1@another-project.iam.gserviceaccount.com",
      "condition": {
        "expression": "",
        "title": "",
        "description": "",
        "location": ""
      }
    },
    "impersonationPermissionUsage": [
      {
        "permission": "iam.serviceAccounts.actAs"
        "used": false
      }
    ],
    "hasPermissionUsageData": true
  },
  "lastRefreshTime": "2022-05-24T07:00:00Z",
  "observationPeriod": "7776000s",
  "stateInfo": {
    "state": "ACCEPTED"
  },
  "category": "SECURITY",
  "associatedRecommendations": [
    {
      "recommendation": "projects/123456789012/locations/global/recommenders/google.iam.policy.Recommender/recommendations/03f3dc20-f9e7-4502-95ab-bf7d3164846f"
    }
  ],
  "targetResources": [
    "//cloudresourcemanager.googleapis.com/projects/123456789012"
  ],
  "insightSubtype": "CROSS_PROJECT_IMPERSONATION",
  "etag": "\"f48fa6a1b15c7741\"",
  "severity": "LOW"
}

Untuk mempelajari info status insight lebih lanjut, lihat Meninjau insight gerakan lateral di halaman ini.

Langkah selanjutnya