Menghapus kebijakan batas akses akun utama

Kebijakan batas akses akun utama (PAB) memungkinkan Anda membatasi resource yang dapat diakses oleh kumpulan akun utama. Jika tidak ingin lagi kebijakan batas akses akun utama diterapkan untuk kumpulan akun utama, Anda dapat menghapus binding kebijakan yang mengikat kebijakan ke kumpulan akun utama. Jika ingin menghapus kebijakan batas akses akun utama dari semua kumpulan akun utama yang terikat, Anda dapat menghapus kebijakan tersebut.

Menghapus kebijakan batas akses akun utama dari kumpulan akun utama memiliki salah satu dampak berikut:

  • Jika akun utama dalam kumpulan akun utama tidak tunduk pada kebijakan batas akses akun utama lainnya, akun utama tersebut akan memenuhi syarat untuk mengakses semua resourceGoogle Cloud .
  • Jika akun utama dalam kumpulan akun utama tunduk pada kebijakan batas akses akun utama lainnya, akun utama tersebut hanya akan memenuhi syarat untuk mengakses resource dalam kebijakan tersebut.

Sebelum memulai

  • Menyiapkan autentikasi.

    Select the tab for how you plan to use the samples on this page:

    gcloud

    In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

    REST

    Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.

      Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init

    Untuk informasi selengkapnya, lihat Mengautentikasi untuk menggunakan REST dalam Google Cloud dokumentasi autentikasi.

  • Baca ringkasan kebijakan batas akses akun utama.

Peran yang diperlukan untuk menghapus kebijakan batas akses akun utama

Untuk mendapatkan izin yang diperlukan guna menghapus kebijakan batas akses akun utama, minta administrator untuk memberi Anda peran IAM Principal Access Boundary Admin (roles/iam.principalAccessBoundaryAdmin) di organisasi Anda. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Peran bawaan ini berisi izin iam.principalaccessboundarypolicies.delete, yang diperlukan untuk menghapus kebijakan batas akses akun utama.

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

Peran yang diperlukan untuk menghapus binding kebijakan batas akses akun utama

Izin yang Anda perlukan untuk menghapus binding kebijakan untuk kebijakan batas akses akun utama bergantung pada kumpulan akun utama yang terikat dengan kebijakan.

Untuk mendapatkan izin yang diperlukan untuk menghapus binding kebijakan untuk kebijakan batas akses akun utama, minta administrator untuk memberi Anda peran IAM berikut:

  • Pengguna Batas Akses Akun Utama (roles/iam.principalAccessBoundaryUser) di organisasi Anda
  • Hapus binding kebijakan untuk kebijakan batas akses akun utama yang terikat ke kumpulan identitas tenaga kerja: IAM Workforce Pool Admin (roles/iam.workforcePoolAdmin) di kumpulan identitas tenaga kerja target
  • Menghapus binding kebijakan untuk kebijakan batas akses akun utama yang terikat ke workload identity pool: IAM Workload Identity Pool Admin (roles/iam.workloadIdentityPoolAdmin) di project yang memiliki workload identity pool target
  • Dapatkan status operasi yang berjalan lama untuk menghapus binding yang mereferensikan workload identity pool: IAM Operation Viewer (roles/iam.operationViewer) di project yang memiliki workload identity pool target
  • Menghapus binding kebijakan untuk kebijakan batas akses akun utama yang terikat ke domain Google Workspace: Workspace Pool IAM Admin (roles/iam.workspacePoolAdmin) di organisasi
  • Menghapus binding kebijakan untuk kebijakan batas akses akun utama yang terikat dengan kumpulan akun utama project: Project IAM Admin (roles/resourcemanager.projectIamAdmin) pada project
  • Mendapatkan status operasi yang berjalan lama untuk menghapus binding yang mereferensikan kumpulan akun utama project: IAM Operation Viewer (roles/iam.operationViewer) pada project
  • Menghapus binding kebijakan untuk kebijakan batas akses akun utama yang terikat dengan kumpulan akun utama folder: Folder IAM Admin (roles/resourcemanager.folderIamAdmin) di folder tersebut
  • Menghapus binding kebijakan untuk kebijakan batas akses akun utama yang terikat ke kumpulan akun utama organisasi: Administrator Organisasi (roles/resourcemanager.organizationAdmin) di organisasi

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

Peran bawaan ini berisi izin yang diperlukan untuk menghapus binding kebijakan untuk kebijakan batas akses akun utama. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk menghapus binding kebijakan untuk kebijakan batas akses akun utama:

  • iam.principalaccessboundarypolicies.unbind di organisasi
  • Hapus binding kebijakan untuk kebijakan batas akses akun utama yang terikat ke kumpulan identitas tenaga kerja: iam.workforcePools.deletePolicyBinding di kumpulan identitas tenaga kerja target
  • Hapus binding kebijakan untuk kebijakan batas akses akun utama yang terikat ke workload identity pool: iam.workloadIdentityPools.deletePolicyBinding di project yang memiliki workload identity pool target
  • Dapatkan status operasi yang berjalan lama untuk menghapus binding yang mereferensikan workload identity pool: iam.operations.get di project yang memiliki workload identity pool target
  • Hapus binding kebijakan untuk kebijakan batas akses akun utama yang terikat ke domain Google Workspace: iam.workspacePools.deletePolicyBinding di organisasi
  • Menghapus binding kebijakan untuk kebijakan batas akses akun utama yang terikat dengan kumpulan akun utama project: resourcemanager.projects.deletePolicyBinding pada project
  • Mendapatkan status operasi yang berjalan lama untuk menghapus binding yang mereferensikan kumpulan akun utama project: iam.operations.get di project
  • Hapus binding kebijakan untuk kebijakan batas akses akun utama yang terikat dengan kumpulan akun utama folder: resourcemanager.folders.deletePolicyBinding di folder
  • Hapus binding kebijakan untuk kebijakan batas akses akun utama yang terikat dengan kumpulan akun utama organisasi: resourcemanager.organizations.deletePolicyBinding di organisasi

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

Bersiap untuk menghapus kebijakan batas akses akun utama

Sebelum menghapus kebijakan batas akses akun utama, tentukan tujuan berikut yang ingin Anda capai:

  • Membuat akun utama dalam kumpulan akun utama memenuhi syarat untuk mengakses semua resource
  • Mengurangi jumlah resource yang memenuhi syarat untuk diakses oleh akun utama dalam kumpulan akun utama

Bagian berikut menjelaskan langkah-langkah yang harus dilakukan untuk mencapai setiap tujuan ini.

Membuat akun utama memenuhi syarat untuk mengakses semua resource

Jika Anda ingin membuat akun utama dalam set akun utama memenuhi syarat untuk mengakses semua resource, lakukan hal berikut:

  1. Identifikasi semua kebijakan batas akses akun utama yang terikat dengan kumpulan akun utama.
  2. Hapus semua kebijakan batas akses akun utama yang terikat dengan akun utama yang ditetapkan dengan menghapus binding kebijakan yang relevan.

Jika akun utama tidak tunduk pada kebijakan batas akses akun utama, akun utama tersebut memenuhi syarat untuk mengakses semua resource Google Cloud .

Memenuhi syarat untuk mengakses resource tidak selalu berarti bahwa pengguna dapat mengakses resource. Untuk mengetahui informasi selengkapnya, lihat Evaluasi kebijakan.

Mengurangi resource yang memenuhi syarat untuk diakses akun utama

Jika akun utama dalam kumpulan akun utama tunduk pada beberapa kebijakan batas akses akun utama, Anda dapat mengurangi jumlah resource yang memenuhi syarat untuk diakses oleh akun utama tersebut dengan menghapus satu atau beberapa kebijakan batas akses akun utama yang berlaku untuk akun utama tersebut. Namun, jangan pernah menghapus semua kebijakan batas akses akun utama yang berlaku untuk akun utama—jika Anda melakukannya, akun utama akan memenuhi syarat untuk mengakses semua resource Google Cloud .

Untuk menghapus kebijakan batas akses akun utama sekaligus memastikan bahwa akun utama dalam kumpulan akun utama selalu tunduk pada setidaknya satu kebijakan batas akses akun utama, ikuti langkah-langkah berikut:

  1. Identifikasi semua kebijakan batas akses akun utama yang terikat dengan kumpulan akun utama.
  2. Identifikasi kebijakan batas akses akun utama yang hanya berisi resource yang ingin Anda jadikan memenuhi syarat untuk diakses oleh akun utama dalam kumpulan akun utama. Ini adalah kebijakan yang tidak akan Anda hapus dari kumpulan akun utama.

    Jika Anda tidak memiliki kebijakan tersebut, buat kebijakan batas akses akun utama baru hanya dengan resource yang Anda inginkan agar akun utama memenuhi syarat untuk mengaksesnya. Kemudian, lampirkan kebijakan ke kumpulan akun utama.

  3. Identifikasi kebijakan batas akses akun utama yang berisi resource yang tidak ingin Anda izinkan untuk diakses oleh akun utama dalam kumpulan akun utama. Kemudian, hapus kebijakan batas akses akun utama tersebut dengan menghapus binding kebijakan yang relevan.

    Jika Anda ingin mengurangi akses untuk akun utama tertentu, tambahkan kondisi ke binding kebijakan, bukan menghapusnya.

Jika Anda ingin mengurangi jumlah resource yang memenuhi syarat untuk diakses oleh akun utama, tetapi tidak ingin menghapus kebijakan batas akses akun utama, Anda dapat mengubah kebijakan batas akses akun utama yang berlaku untuk akun utama tersebut. Untuk mempelajari cara mengubah kebijakan batas akses akun utama, lihat Mengedit kebijakan batas akses akun utama.

Menghapus kebijakan batas akses akun utama dari kumpulan akun utama

Sebelum menghapus kebijakan batas akses akun utama dari kumpulan akun utama, siapkan penghapusan kebijakan terlebih dahulu. Kemudian, hapus kebijakan dengan menghapus binding kebijakan yang mengikat kebijakan ke kumpulan akun utama.

Anda dapat menghapus binding kebijakan menggunakan Konsol Google Cloud, gcloud CLI, atau IAM REST API.

Konsol

  1. Di konsol Google Cloud, buka halaman Kebijakan Batas Akses Utama.

    Buka kebijakan Principal Access Boundary

  2. Pilih organisasi yang memiliki kebijakan batas akses akun utama yang binding-nya ingin Anda hapus.

  3. Klik ID kebijakan kebijakan batas akses akun utama yang binding-nya ingin Anda hapus.

  4. Klik tab Bindings.

  5. Temukan ID binding yang ingin Anda hapus. Di baris binding tersebut, klik Tindakan, lalu klik Hapus binding.

  6. Pada dialog konfirmasi, klik Delete.

gcloud

Perintah gcloud iam policy-bindings delete menghapus binding kebijakan.

Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

  • BINDING_ID: ID binding kebijakan yang ingin Anda hapus—misalnya, example-binding.
  • RESOURCE_TYPE: Jenis resource Resource Manager (project, folder, atau organisasi) yang merupakan turunan dari binding kebijakan. Gunakan nilai project, folder, atau organization

    Jenis resource bergantung pada akun utama yang ditetapkan dalam binding kebijakan. Untuk melihat jenis resource yang akan digunakan, lihat Jenis utama yang didukung.

  • RESOURCE_ID: ID project, folder, atau organisasi yang merupakan turunan dari binding kebijakan. Project ID adalah string alfanumerik, seperti my-project. Folder dan ID organisasi berupa numerik, seperti 123456789012.

Jalankan perintah berikut:

Linux, macOS, atau Cloud Shell

gcloud iam policy-bindings delete BINDING_ID \
    --RESOURCE_TYPE=RESOURCE_ID --location=global

Windows (PowerShell)

gcloud iam policy-bindings delete BINDING_ID `
    --RESOURCE_TYPE=RESOURCE_ID --location=global

Windows (cmd.exe)

gcloud iam policy-bindings delete BINDING_ID ^
    --RESOURCE_TYPE=RESOURCE_ID --location=global

Respons berisi operasi yang berjalan lama yang mewakili permintaan Anda. Untuk mempelajari cara mendapatkan status operasi yang berjalan lama, lihat Memeriksa status operasi yang berjalan lama di halaman ini.

Delete request issued for: [example-binding]
Waiting for operation [organizations/123456789012/locations/global/operations/operation-1715374724030-6181fcd1520c5-d21b0a12-b704e1ce] to complete...done.
Deleted policyBinding [example-binding].

REST

Metode policyBindings.delete menghapus binding kebijakan.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • RESOURCE_TYPE: Jenis resource Resource Manager (project, folder, atau organisasi) yang merupakan turunan dari binding kebijakan. Gunakan nilai projects, folders, atau organizations

    Jenis resource bergantung pada akun utama yang ditetapkan dalam binding kebijakan. Untuk melihat jenis resource yang akan digunakan, lihat Jenis utama yang didukung.

  • RESOURCE_ID: ID project, folder, atau organisasi yang merupakan turunan dari binding kebijakan. Project ID adalah string alfanumerik, seperti my-project. Folder dan ID organisasi berupa numerik, seperti 123456789012.
  • BINDING_ID: ID binding kebijakan yang ingin Anda hapus—misalnya, example-binding.

Metode HTTP dan URL:

DELETE https://iam.googleapis.com/v3/RESOURCE_TYPE/RESOURCE_ID/locations/global/policyBindings/BINDING_ID

Untuk mengirim permintaan, perluas salah satu opsi berikut:

Respons berisi operasi yang berjalan lama yang mewakili permintaan Anda. Untuk mempelajari cara mendapatkan status operasi yang berjalan lama, lihat Memeriksa status operasi yang berjalan lama di halaman ini.

{
  "name": "organizations/123456789012/locations/global/operations/operation-1715373190994-6181f71b4daad-6d8168c1-13cc6600",
  "metadata": {
    "@type": "type.googleapis.com/google.iam.v3.OperationMetadata",
    "createTime": "2024-05-10T20:33:11.165728913Z",
    "target": "organizations/123456789012/locations/global/policyBindings/example-binding",
    "verb": "delete",
    "requestedCancellation": false,
    "apiVersion": "v3"
  },
  "done": false
}

Menghapus kebijakan batas akses akun utama

Sebelum menghapus kebijakan batas akses akun utama, sebaiknya Anda mengidentifikasi dan menghapus semua binding kebijakan batas akses akun utama yang mereferensikan kebijakan batas akses akun utama.

Jika Anda menghapus kebijakan batas akses akun utama dengan binding kebijakan yang ada, binding tersebut pada akhirnya akan dihapus. Namun, hingga dihapus, binding kebijakan masih dihitung terhadap batas 10 binding yang dapat merujuk ke satu kumpulan akun utama.

Anda dapat menghapus kebijakan batas akses akun utama menggunakan Konsol Google Cloud, gcloud CLI, atau IAM REST API.

Konsol

  1. Di konsol Google Cloud, buka halaman Kebijakan Batas Akses Utama.

    Buka kebijakan Principal Access Boundary

  2. Pilih organisasi yang memiliki kebijakan batas akses akun utama yang binding-nya ingin Anda hapus.

  3. Temukan ID kebijakan yang ingin Anda hapus. Di baris kebijakan tersebut, klik Tindakan, lalu klik Hapus kebijakan.

  4. Pada dialog konfirmasi, konfirmasi bahwa Anda ingin menghapus kebijakan:

    • Untuk menghapus kebijakan hanya jika kebijakan tidak memiliki binding yang terkait dengannya, klik Hapus.
    • Untuk menghapus kebijakan dan semua binding terkait, pilih kotak centang Hapus kebijakan secara paksa, lalu klik Hapus.

gcloud

Perintah gcloud iam gcloud iam principal-access-boundary-policies delete akan menghapus kebijakan batas akses akun utama dan semua binding terkait.

Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

  • PAB_POLICY_ID: ID kebijakan batas akses akun utama yang ingin Anda hapus—misalnya, example-policy.
  • ORG_ID: ID organisasi yang memiliki kebijakan batas akses utama. ID organisasi berupa angka, seperti 123456789012.
  • FORCE_FLAG: Opsional. Untuk memaksa perintah menghapus kebijakan, meskipun kebijakan tersebut dirujuk dalam binding kebijakan yang ada, gunakan flag --force. Jika tanda ini tidak ditetapkan dan kebijakan dirujuk dalam binding kebijakan yang ada, perintah akan gagal.

Jalankan perintah berikut:

Linux, macOS, atau Cloud Shell

gcloud iam principal-access-boundary-policies delete PAB_POLICY_ID \
    --organization=ORG_ID --location=global FORCE_FLAG

Windows (PowerShell)

gcloud iam principal-access-boundary-policies delete PAB_POLICY_ID `
    --organization=ORG_ID --location=global FORCE_FLAG

Windows (cmd.exe)

gcloud iam principal-access-boundary-policies delete PAB_POLICY_ID ^
    --organization=ORG_ID --location=global FORCE_FLAG

Respons berisi operasi yang berjalan lama yang mewakili permintaan Anda. Untuk mempelajari cara mendapatkan status operasi yang berjalan lama, lihat Memeriksa status operasi yang berjalan lama di halaman ini.

Delete request issued for: [example-policy]
Waiting for operation [organizations/123456789012/locations/global/operations/operation-1715374811191-6181fd2471ab4-f0947406-85778c43] to complete...
Waiting for operation [organizations/123456789012/locations/global/operations/operation-1715374811191-6181fd2471ab4-f0947406-85778c43] to complete...done.
Deleted principalAccessBoundaryPolicy [example-policy].

REST

Metode principalAccessBoundaryPolicies.delete menghapus kebijakan batas akses akun utama dan semua binding terkait.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • ORG_ID: ID organisasi yang memiliki kebijakan batas akses utama. ID organisasi berupa angka, seperti 123456789012.
  • PAB_POLICY_ID: ID kebijakan batas akses akun utama yang ingin Anda hapus—misalnya, example-policy.
  • FORCE_DELETE: Opsional. Untuk memaksa permintaan menghapus kebijakan, meskipun kebijakan dirujuk dalam binding kebijakan yang ada, tambahkan parameter kueri force=true. Jika parameter kueri ini tidak ditetapkan dan kebijakan dirujuk dalam binding kebijakan yang ada, permintaan akan gagal.

Metode HTTP dan URL:

DELETE https://iam.googleapis.com/v3/organizations/ORG_ID/locations/global/principalAccessBoundaryPolicies/PAB_POLICY_ID?FORCE_DELETE

Untuk mengirim permintaan, perluas salah satu opsi berikut:

Respons berisi operasi yang berjalan lama yang mewakili permintaan Anda. Untuk mempelajari cara mendapatkan status operasi yang berjalan lama, lihat Memeriksa status operasi yang berjalan lama di halaman ini.

{
  "name": "organizations/123456789012/locations/global/operations/operation-1715373190994-6181f71b4daad-6d8168c1-13cc6600",
  "metadata": {
    "@type": "type.googleapis.com/google.iam.v3.OperationMetadata",
    "createTime": "2024-05-10T20:33:11.165728913Z",
    "target": "organizations/123456789012/locations/global/policyBindings/example-policy",
    "verb": "delete",
    "requestedCancellation": false,
    "apiVersion": "v3"
  },
  "done": false
}

Memeriksa status operasi yang berjalan lama

Saat Anda menggunakan REST API atau library klien, metode apa pun yang mengubah kebijakan atau binding batas akses utama akan menampilkan operasi yang berjalan lama (LRO). Operasi yang berjalan lama melacak status permintaan dan menunjukkan apakah perubahan pada kebijakan atau binding sudah selesai.

REST

Metode operations.get menampilkan status operasi yang berjalan lama.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • OPERATION_NAME: Nama lengkap operasi. Anda menerima nama ini sebagai respons atas permintaan asli Anda.

    Nama operasi memiliki format berikut:

          RESOURCE_TYPE/RESOURCE_ID/locations/global/operations/OPERATION_ID
        

Metode HTTP dan URL:

GET https://iam.googleapis.com/v3/OPERATION_NAME

Untuk mengirim permintaan, perluas salah satu opsi berikut:

Anda akan melihat respons JSON seperti berikut:

{
  "name": "organizations/314340013352/locations/global/operations/operation-1732752311821-627edd607a3df-9a62cdea-2a7d9f07",
  "metadata": {
    "@type": "type.googleapis.com/google.iam.v3.OperationMetadata",
    "createTime": "2024-11-28T00:05:12.006289686Z",
    "endTime": "2024-11-28T00:05:12.192141801Z",
    "target": "organizations/314340013352/locations/global/principalAccessBoundaryPolicies/example-policy",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v3"
  },
  "done": true,
  "response": {
    PAB_POLICY
  }
}

Jika kolom done operasi tidak ada, terus pantau statusnya dengan mendapatkan operasi tersebut berulang kali. Gunakan backoff eksponensial terpotong untuk menambahkan penundaan di antara setiap permintaan. Saat kolom done ditetapkan ke true, operasi akan selesai, dan Anda dapat berhenti mendapatkan operasi tersebut.

Langkah berikutnya