Kebijakan Principal Access Boundary (PAB) memungkinkan Anda membatasi resource yang dapat diakses oleh sekumpulan akun utama. Jika tidak ingin lagi menerapkan kebijakan Batas Akses Akun Utama untuk set akun utama, Anda dapat menghapus binding kebijakan yang mengikat kebijakan ke set akun utama. Jika ingin menghapus kebijakan Batas Akses Akun Utama dari semua set akun utama yang terikat dengannya, Anda dapat menghapus kebijakan tersebut.
Menghapus kebijakan Principal Access Boundary dari set akun utama akan memiliki salah satu efek berikut:
- Jika akun utama dalam set akun utama tidak tunduk pada kebijakan Batas Akses Akun Utama lainnya, maka akun utama tersebut akan memenuhi syarat untuk mengakses semua resourceGoogle Cloud .
- Jika akun utama dalam set akun utama tunduk pada kebijakan Batas Akses Akun Utama lainnya, maka akun utama tersebut hanya akan memenuhi syarat untuk mengakses resource dalam kebijakan tersebut.
Sebelum memulai
Menyiapkan autentikasi.
Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:
gcloud
Di konsol Google Cloud , aktifkan Cloud Shell.
Di bagian bawah konsol Google Cloud , sesi Cloud Shell akan dimulai dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi pada sesi.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Instal Google Cloud CLI.
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud .
Peran yang diperlukan untuk menghapus kebijakan Batas Akses Akun Utama
Untuk mendapatkan izin yang
diperlukan untuk menghapus kebijakan Principal Access Boundary,
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 Principal.
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Peran yang diperlukan untuk menghapus pengikatan kebijakan Batas Akses Akun Utama
Izin yang Anda perlukan untuk menghapus pengikatan kebijakan untuk kebijakan Batas Akses Utama bergantung pada set akun utama yang terikat ke kebijakan.
Untuk mendapatkan izin yang Anda perlukan untuk menghapus binding kebijakan untuk kebijakan Batas Akses Principal, minta administrator untuk memberi Anda peran IAM berikut:
- Pengguna Batas Akses Akun Utama (
roles/iam.principalAccessBoundaryUser) di organisasi Anda -
Hapus binding kebijakan untuk kebijakan Principal Access Boundary yang terikat ke workforce identity pool:
IAM Workforce Pool Admin (
roles/iam.workforcePoolAdmin) di workforce identity pool target -
Menghapus binding kebijakan untuk kebijakan Principal Access Boundary yang terikat ke workload identity pool:
IAM Workload Identity Pool Admin (
roles/iam.workloadIdentityPoolAdmin) di project yang memiliki target workload identity pool -
Mendapatkan status operasi yang berjalan lama untuk menghapus binding yang mereferensikan workload identity pool:
IAM Operation Viewer (
roles/iam.operationViewer) pada project yang memiliki target workload identity pool -
Menghapus binding kebijakan untuk kebijakan Principal Access Boundary yang terikat ke domain Google Workspace:
Admin IAM Pool Workspace (
roles/iam.workspacePoolAdmin) di organisasi tersebut -
Menghapus binding kebijakan untuk kebijakan Batas Akses Utama yang terikat ke set utama project:
Admin IAM Project (
roles/resourcemanager.projectIamAdmin) pada project -
Mendapatkan status operasi yang berjalan lama untuk menghapus binding yang mereferensikan set akun utama project:
Pelihat Operasi IAM (
roles/iam.operationViewer) pada project -
Menghapus binding kebijakan untuk kebijakan Batas Akses Utama yang terikat ke set utama folder:
Admin IAM Folder (
roles/resourcemanager.folderIamAdmin) di folder tersebut -
Menghapus binding kebijakan untuk kebijakan Batas Akses Akun Utama yang terikat ke set akun utama organisasi:
Administrator Organisasi (
roles/resourcemanager.organizationAdmin) di organisasi
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin yang diperlukan untuk menghapus binding kebijakan untuk kebijakan Principal Access Boundary. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk menghapus pengikatan kebijakan untuk kebijakan Batas Akses Utama:
-
iam.principalaccessboundarypolicies.unbinddi organisasi -
Menghapus pengikatan kebijakan untuk kebijakan Batas Akses Utama yang terikat ke kumpulan identitas tenaga kerja:
iam.workforcePools.deletePolicyBindingdi kumpulan identitas tenaga kerja target -
Menghapus binding kebijakan untuk kebijakan Principal Access Boundary yang terikat ke workload identity pool:
iam.workloadIdentityPools.deletePolicyBindingdi project yang memiliki target workload identity pool -
Dapatkan status operasi yang berjalan lama untuk menghapus binding yang mereferensikan workload identity pool:
iam.operations.getdi project yang memiliki target workload identity pool -
Menghapus pengikatan kebijakan untuk kebijakan Batas Akses Utama yang terikat ke domain Google Workspace:
iam.workspacePools.deletePolicyBindingdi organisasi -
Menghapus pengikatan kebijakan untuk kebijakan Principal Access Boundary yang terikat ke set akun utama project:
resourcemanager.projects.deletePolicyBindingpada project -
Mendapatkan status operasi yang berjalan lama untuk menghapus binding yang mereferensikan set utama project:
iam.operations.getpada project -
Menghapus pengikatan kebijakan untuk kebijakan Principal Access Boundary yang terikat ke set utama folder:
resourcemanager.folders.deletePolicyBindingdi folder tersebut -
Menghapus pengikatan kebijakan untuk kebijakan Batas Akses Utama yang terikat ke set akun utama organisasi:
resourcemanager.organizations.deletePolicyBindingdi organisasi tersebut
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Mempersiapkan penghapusan kebijakan Batas Akses Akun Utama
Sebelum menghapus kebijakan Principal Access Boundary, tentukan tujuan mana yang ingin Anda capai dari opsi berikut:
- Membuat entitas dalam set entitas memenuhi syarat untuk mengakses semua resource
- Mengurangi jumlah resource yang memenuhi syarat untuk diakses oleh akun utama dalam set akun utama
Bagian berikut menjelaskan langkah-langkah yang harus dilakukan untuk mencapai setiap tujuan ini.
Membuat entitas 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:
- Identifikasi semua kebijakan Principal Access Boundary yang terikat ke set utama.
- Hapus semua kebijakan Batas Akses Akun Utama yang terikat ke set akun utama dengan menghapus pengikatan kebijakan yang relevan.
Jika akun utama tidak tunduk pada kebijakan Batas Akses Akun Utama, maka akun utama tersebut memenuhi syarat untuk mengakses semua resource Google Cloud .
Memenuhi syarat untuk mengakses resource tidak berarti pengguna dapat mengakses resource. Untuk mengetahui informasi selengkapnya, lihat Evaluasi kebijakan.
Mengurangi resource yang dapat diakses oleh akun utama
Jika akun utama dalam set akun utama tunduk pada beberapa kebijakan Principal Access Boundary, Anda dapat mengurangi jumlah resource yang dapat diakses akun utama dengan menghapus satu atau beberapa kebijakan Principal Access Boundary yang berlaku untuknya. Namun, jangan pernah menghapus semua kebijakan Batas Akses Akun Utama yang tunduk pada akun utama—jika Anda melakukannya, akun utama akan memenuhi syarat untuk mengakses semua resource Google Cloud .
Untuk menghapus kebijakan Principal Access Boundary sambil memastikan bahwa akun utama dalam kumpulan akun utama selalu tunduk pada setidaknya satu kebijakan Principal Access Boundary, ikuti langkah-langkah berikut:
- Identifikasi semua kebijakan Principal Access Boundary yang terikat ke set utama.
Identifikasi kebijakan Batas Akses Akun Utama yang hanya berisi resource yang Anda inginkan agar akun utama dalam set akun utama memenuhi syarat untuk mengaksesnya. Ini adalah kebijakan yang tidak akan Anda hapus dari set akun utama.
Jika Anda tidak memiliki kebijakan tersebut, buat kebijakan Batas Akses Akun Utama baru dengan hanya resource yang Anda inginkan agar akun utama memenuhi syarat untuk mengaksesnya. Kemudian, lampirkan kebijakan ke set akun utama.
Identifikasi kebijakan Batas Akses Akun Utama yang berisi resource yang tidak ingin Anda izinkan untuk diakses oleh akun utama dalam set 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 dapat 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 Principal Access Boundary, lihat Mengedit kebijakan Principal Access Boundary.
Menguji penghapusan kebijakan atau pengikatan Principal Access Boundary
Sebelum Anda berkomitmen untuk menghapus kebijakan atau binding Batas Akses Akun Utama, sebaiknya uji bagaimana perubahan tersebut dapat memengaruhi akses akun utama Anda. Anda dapat menggunakan Policy Simulator untuk menyimulasikan penghapusan dan membantu Anda memahami potensi dampaknya.
Untuk menguji penghapusan, lihat prosedur berikut dalam dokumentasi Policy Intelligence:
- Simulasikan penghapusan aturan principal access boundary
- Mensimulasikan penghapusan kebijakan Principal Access Boundary
- Menyimulasikan penghapusan pengikatan untuk kebijakan Batas Akses Principal
Untuk mempelajari lebih lanjut cara menguji kebijakan Principal Access Boundary dengan Policy Simulator, lihat Policy Simulator untuk kebijakan Principal Access Boundary.
Menghapus kebijakan Batas Akses Akun Utama dari kumpulan akun utama
Sebelum menghapus kebijakan Batas Akses Akun Utama dari set akun utama, siapkan penghapusan kebijakan terlebih dahulu. Kemudian, hapus kebijakan dengan menghapus binding kebijakan yang mengikat kebijakan ke set akun utama.
Anda dapat menghapus binding kebijakan menggunakan konsol Google Cloud , gcloud CLI, atau IAM REST API.
Konsol
Di konsol Google Cloud , buka halaman Principal Access Boundary policies.
Pilih organisasi yang memiliki kebijakan Batas Akses Akun Utama yang pengikatannya ingin Anda hapus.
Klik ID kebijakan Principal Access Boundary yang ingin Anda hapus ikatannya.
Klik tab Bindings.
Temukan ID binding yang ingin Anda hapus. Di baris binding tersebut, klik Tindakan, lalu klik Hapus binding.
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 induk dari binding kebijakan. Gunakan nilaiproject,folder, atauorganizationJenis resource bergantung pada prinsipal 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 menjadi induk binding kebijakan. Project ID adalah string alfanumerik, sepertimy-project. Folder dan ID organisasi berupa numerik, seperti123456789012.
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 merepresentasikan 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 induk dari binding kebijakan. Gunakan nilaiprojects,folders, atauorganizationsJenis resource bergantung pada prinsipal 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 menjadi induk binding kebijakan. Project ID adalah string alfanumerik, sepertimy-project. Folder dan ID organisasi berupa numerik, seperti123456789012.-
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 Anda, perluas salah satu opsi berikut:
Respons berisi operasi yang berjalan lama yang merepresentasikan 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 Utama
Sebelum menghapus kebijakan Batas Akses Utama, sebaiknya identifikasi dan hapus semua pengikatan kebijakan Batas Akses Utama yang mereferensikan kebijakan Batas Akses Utama.
Jika Anda menghapus kebijakan Batas Akses Utama dengan pengikatan kebijakan yang ada, pengikatan tersebut pada akhirnya akan dihapus. Namun, hingga dihapus, pengikatan kebijakan masih dihitung dalam batas 10 pengikatan yang dapat merujuk ke satu set pokok.
Anda dapat menghapus kebijakan Principal Access Boundary menggunakan konsol Google Cloud , gcloud CLI, atau IAM REST API.
Konsol
Di konsol Google Cloud , buka halaman Principal Access Boundary policies.
Pilih organisasi yang memiliki kebijakan Batas Akses Akun Utama yang pengikatannya ingin Anda hapus.
Temukan ID kebijakan yang ingin Anda hapus. Di baris kebijakan tersebut, klik Tindakan, lalu klik Hapus kebijakan.
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, centang kotak Forcefully delete policy, lalu klik Delete.
gcloud
Perintah
gcloud iam gcloud iam principal-access-boundary-policies delete
menghapus kebijakan Principal Access Boundary dan semua pengikatan terkait.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
-
PAB_POLICY_ID: ID kebijakan Principal Access Boundary yang ingin Anda hapus—misalnya,example-policy. ORG_ID: ID organisasi yang memiliki kebijakan Batas Akses Principal. ID organisasi berupa angka, seperti123456789012.FORCE_FLAG: Opsional. Untuk memaksa perintah menghapus kebijakan, meskipun kebijakan tersebut dirujuk dalam binding kebijakan yang ada, gunakan flag--force. Jika tanda ini tidak disetel 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 merepresentasikan 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 pengikatan terkait.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
ORG_ID: ID organisasi yang memiliki kebijakan Batas Akses Principal. ID organisasi berupa angka, seperti123456789012.-
PAB_POLICY_ID: ID kebijakan Principal Access Boundary 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 kueriforce=true. Jika parameter kueri ini tidak disetel 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 Anda, perluas salah satu opsi berikut:
Respons berisi operasi yang berjalan lama yang merepresentasikan 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 Principal Access Boundary akan menampilkan operasi yang berjalan lama (LRO). Operasi yang berjalan lama akan 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 Anda, 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
- Membuat dan menerapkan kebijakan Batas Akses Utama
- Melihat kebijakan Principal Access Boundary
- Mengedit kebijakan Batas Akses Utama