Kebijakan Principal Access Boundary (PAB) memungkinkan Anda membatasi resource yang dapat diakses oleh sekumpulan akun utama. Halaman ini menjelaskan cara mengedit kebijakan Batas Akses Utama yang ada, dan cara mengedit pengikatan kebijakan untuk kebijakan Batas Akses Utama guna mengubah pihak yang menerapkan kebijakan.
Sebelum memulai
Menyiapkan autentikasi.
Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:
gcloud
Instal Google Cloud CLI, lalu login ke gcloud CLI dengan identitas gabungan Anda. Setelah login, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:
gcloud initREST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Instal Google Cloud CLI, lalu login ke gcloud CLI dengan identitas gabungan Anda.
Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Cloud de Confiance .
Peran yang diperlukan untuk mengedit kebijakan Batas Akses Utama
Untuk mendapatkan izin yang diperlukan untuk mengedit 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.update
yang diperlukan untuk mengedit kebijakan Batas Akses Principal.
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Peran yang diperlukan untuk mengedit pengikatan kebijakan Batas Akses Akun Utama
Izin yang Anda perlukan untuk mengedit pengikatan kebijakan untuk kebijakan Batas Akses Akun Utama bergantung pada set akun utama yang terikat ke kebijakan.
Untuk mendapatkan izin yang Anda perlukan untuk mengedit binding kebijakan untuk kebijakan Batas Akses Principal, minta administrator Anda untuk memberi Anda peran IAM berikut:
- Pengguna Batas Akses Akun Utama (
roles/iam.principalAccessBoundaryUser) di organisasi Anda -
Mengedit 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 -
Mengedit 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 mengedit binding yang mereferensikan workload identity pool:
IAM Operation Viewer (
roles/iam.operationViewer) pada project yang memiliki target workload identity pool -
Mengedit binding kebijakan untuk kebijakan Principal Access Boundary yang terikat ke domain Google Workspace:
Admin IAM Pool Workspace (
roles/iam.workspacePoolAdmin) di organisasi -
Mengedit 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 mengedit binding yang mereferensikan set entity utama project:
IAM Operation Viewer (
roles/iam.operationViewer) pada project -
Mengedit pengikatan kebijakan untuk kebijakan Batas Akses Utama yang terikat ke set utama folder:
Admin IAM Folder (
roles/resourcemanager.folderIamAdmin) di folder tersebut -
Mengedit pengikatan kebijakan untuk kebijakan Principal Access Boundary yang terikat ke set akun utama organisasi:
Administrator Organisasi (
roles/resourcemanager.organizationAdmin) pada organisasi
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin yang diperlukan untuk mengedit binding kebijakan untuk kebijakan Batas Akses Principal. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk mengedit pengikatan kebijakan untuk kebijakan Batas Akses Principal:
-
iam.principalaccessboundarypolicies.binddi organisasi -
Edit pengikatan kebijakan untuk kebijakan Batas Akses Utama yang terikat ke kumpulan identitas tenaga kerja:
iam.workforcePools.updatePolicyBindingdi target workforce identity pool -
Edit binding kebijakan untuk kebijakan Principal Access Boundary yang terikat ke workload identity pool:
iam.workloadIdentityPools.updatePolicyBindingdi project yang memiliki workload identity pool target -
Dapatkan status operasi yang berjalan lama untuk mengedit binding yang mereferensikan workload identity pool:
iam.operations.getdi project yang memiliki workload identity pool target -
Mengedit pengikatan kebijakan untuk kebijakan Batas Akses Utama yang terikat ke domain Google Workspace:
iam.workspacePools.updatePolicyBindingdi organisasi -
Mengedit binding kebijakan untuk kebijakan Batas Akses Utama yang terikat ke set entity utama project:
resourcemanager.projects.updatePolicyBindingpada project tersebut -
Mendapatkan status operasi yang berjalan lama untuk mengedit binding yang mereferensikan set akun utama project:
iam.operations.getdi project -
Mengedit pengikatan kebijakan untuk kebijakan Batas Akses Utama yang terikat ke set utama folder:
resourcemanager.folders.updatePolicyBindingdi folder tersebut -
Mengedit pengikatan kebijakan untuk kebijakan Batas Akses Utama yang terikat ke set utama organisasi:
resourcemanager.organizations.updatePolicyBindingdi organisasi
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Mengedit kebijakan Batas Akses Akun Utama yang ada
Jika Anda ingin menambahkan aturan ke kebijakan Principal Access Boundary, menghapus aturan dari kebijakan Principal Access Boundary, atau mengubah metadata kebijakan Principal Access Boundary, edit kebijakan Principal Access Boundary.
Anda dapat mengedit kebijakan Batas Akses Principal menggunakan konsol Cloud de Confiance , gcloud CLI, atau IAM REST API.
Konsol
Di konsol Cloud de Confiance , buka halaman Principal Access Boundary policies.
Pilih organisasi yang memiliki kebijakan Batas Akses Akun Utama yang ingin Anda edit.
Klik ID kebijakan Principal Access Boundary yang ingin Anda edit.
Klik Edit kebijakan.
Untuk mengedit aturan kebijakan, lakukan hal berikut:
- Klik aturan yang ingin Anda edit.
- Edit deskripsi aturan atau resource yang disertakan dalam aturan.
- Klik Done.
Untuk menghapus aturan dari kebijakan, klik Hapus di baris aturan tersebut.
Untuk mengedit nama tampilan kebijakan, edit kolom Nama tampilan.
Untuk mengedit versi penerapan kebijakan, klik daftar Versi penerapan dan pilih nilai baru.
Opsional: Untuk menguji perubahan pada kebijakan Batas Akses Akun Utama dengan Policy Simulator, klik Uji perubahan. Tinjau hasil simulasi dan perbarui kebijakan jika perlu.
Untuk mempelajari lebih lanjut cara menguji kebijakan Principal Access Boundary dengan Policy Simulator, lihat Policy Simulator untuk kebijakan Principal Access Boundary.
Klik Simpan.
gcloud
Perintah
gcloud iam principal-access-boundary-policies update
memperbarui kebijakan Batas Akses Akun Utama yang ada.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
-
PAB_POLICY_ID: ID kebijakan Principal Access Boundary yang ingin Anda perbarui—misalnya,example-policy. ORG_ID: ID organisasi yang memiliki kebijakan Batas Akses Principal. ID organisasi berupa angka, seperti123456789012.-
FIELD_TO_UPDATE=UPDATED_VALUE: Kolom yang ingin Anda perbarui dan nilai yang diperbarui yang sesuai.Berikut adalah contoh flag yang dapat Anda gunakan untuk memperbarui kolom dalam kebijakan:
-
--display-name=DISPLAY_NAME: Mengganti nama tampilan kebijakan denganDISPLAY_NAME. -
--details-enforcement-version=ENFORCEMENT_VERSION: Perbarui versi penerapan kebijakan keENFORCEMENT_VERSION. -
--details-rules=RULES_FILE.json: Mengganti aturan kebijakan Batas Akses Akun Utama dengan aturan dalamRULES_FILE.json. Untuk mempelajari cara memformat file aturan, lihat Membuat kebijakan Batas Akses Principal.Jika Anda menggunakan tanda ini, Anda tidak dapat menggunakan tanda
--add-details-rules. -
--add-details-rules=RULES_FILE: Tambahkan aturan diRULES_FILE.jsonke aturan yang ada dalam kebijakan. Untuk mempelajari cara memformat file aturan, lihat Membuat kebijakan Batas Akses Principal.Jika Anda menggunakan tanda ini, Anda tidak dapat menggunakan tanda
--details-rules. -
--remove-details-rules=RULES_FILE: Hapus aturan diRULES_FILE.jsondari aturan yang ada dalam kebijakan. Untuk mempelajari cara memformat file aturan, lihat Membuat kebijakan Batas Akses Principal. Hanya aturan yang sama persis dengan salah satu aturan diRULES_FILE.jsonyang dihapus.Jika Anda menggunakan tanda ini, Anda tidak dapat menggunakan tanda
--clear-rule-details. -
--clear-details-rules: Hapus semua aturan dari kebijakan Principal Access Boundary.Jika Anda menggunakan tanda ini, Anda tidak dapat menggunakan tanda
--remove-rule-details.
Untuk daftar lengkap flag yang dapat Anda gunakan untuk memperbarui kebijakan Batas Akses Akun Utama, lihat referensi perintah
gcloud iam principal-access-boundary-policies update. -
FORMAT: Format respons. Gunakanjsonatauyaml.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud iam principal-access-boundary-policies update PAB_POLICY_ID \ --organization=ORG_ID --location=global \ --FIELD_TO_UPDATE=UPDATED_VALUE \ --format=FORMAT
Windows (PowerShell)
gcloud iam principal-access-boundary-policies update PAB_POLICY_ID ` --organization=ORG_ID --location=global ` --FIELD_TO_UPDATE=UPDATED_VALUE ` --format=FORMAT
Windows (cmd.exe)
gcloud iam principal-access-boundary-policies update PAB_POLICY_ID ^ --organization=ORG_ID --location=global ^ --FIELD_TO_UPDATE=UPDATED_VALUE ^ --format=FORMAT
Respons berisi operasi yang berjalan lama yang merepresentasikan permintaan Anda. Setelah operasi selesai, respons akan mencetak kebijakan Batas Akses Principal yang telah diperbarui.
Request issued for: [example-policy]
Waiting for operation [organizations/123456789012/locations/global/operations/operation-1715374208720-6181fae5e2034-2d8a712b-5c92e5b9] to complete...done.
Updated principalAccessBoundaryPolicy [example-policy].
{
"name": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-policy",
"uid": "puid_13364150419245236225",
"etag": "W/\"Gh/PcTdJD/AWHUhPW45kdw==\"",
"displayName": "Updated display name",
"createTime": "2024-05-07T00:05:48.295209Z",
"updateTime": "2024-05-10T20:50:09.200421Z",
"details": [
"rules": {
[
"description": "Make principals eligible to access example.com"
"resources": {
"//cloudresourcemanager.googleapis.com/organizations/123456789012"
},
"effect": ALLOW
]
},
"enforcementVersion": "1"
]
}
REST
Metode
principalAccessBoundaryPolicies.patch
memperbarui kebijakan Principal Access Boundary yang ada.
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 perbarui—misalnya,example-policy. -
FIELDS_TO_UPDATE: Daftar kolom yang dipisahkan koma yang ingin Anda perbarui. Jika Anda tidak menentukan kolom yang akan diperbarui, IAM akan mengganti kebijakan yang ada dengan konten isi permintaan.Nilai yang diterima adalah
displayName,details,details.rules,details.rules.description,details.rules.resources,details.rules.effect, dandetails.enforcementVersion. DISPLAY_NAME: Opsional. Deskripsi kebijakan Principal Access Boundary yang mudah dibaca, misalnya,Example policy. Nama tampilan dapat terdiri dari maksimal 63 karakter.-
PAB_RULES: Daftar aturan principal access boundary, yang menentukan resource yang dapat diakses oleh entitas yang terpengaruh. Kebijakan Principal Access Boundary dapat memiliki hingga 500 aturan. Setiap aturan memiliki format berikut:{ "description": "DESCRIPTION", "resources": [ RESOURCES ], "effect": "ALLOW" }
Ganti nilai berikut:
DESCRIPTION: Opsional. Deskripsi aturan kebijakan Batas Akses Utama. Deskripsi dapat berisi maksimal 256 karakter.-
RESOURCES: Daftar resource Resource Manager (project, folder, dan organisasi) yang Anda inginkan agar pokok dapat mengaksesnya. Setiap akun utama yang tunduk pada kebijakan ini memenuhi syarat untuk mengakses resource ini.Setiap kebijakan Batas Akses Akun Utama dapat mereferensikan maksimum 500 resource di semua aturan dalam kebijakan.
-
ENFORCEMENT_VERSION: Versi kebijakan Principal Access Boundary yang digunakan IAM saat menerapkan kebijakan. Versi penerapan menentukan izin yang diterapkan IAM kebijakan Batas Akses Akun Utama.Nilai yang diterima adalah
1,2,3,4, danlatest.Untuk mengetahui informasi selengkapnya tentang cara menyetel dan mengelola versi penerapan, lihat Pengelolaan versi penerapan.
Metode HTTP dan URL:
PATCH https://iam.googleapis.com/v3/organizations/ORG_ID/locations/global/principalAccessBoundaryPolicies/PAB_POLICY_ID?updateMask=FIELDS_TO_UPDATE
Meminta isi JSON:
{
"displayName": DISPLAY_NAME,
"details": {
"rules": [
PAB_RULES
],
"enforcementVersion": "ENFORCEMENT_VERSION",
}
}
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-1715626721931-6185a7953ef76-76f80ee4-19cd1bf7",
"metadata": {
"@type": "type.googleapis.com/google.iam.v3.OperationMetadata",
"createTime": "2024-05-13T18:58:43.721277235Z",
"target": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-policy",
"verb": "update",
"requestedCancellation": false,
"apiVersion": "v3"
},
"done": false
}
Mengubah target penerapan kebijakan Batas Akses Akun Utama
Setelah membuat binding kebijakan untuk kebijakan Principal Access Boundary, Anda tidak dapat mengubah ID kebijakan atau set akun utama dalam binding. Akibatnya, jika Anda ingin mengubah siapa yang kebijakan Batas Akses Principalnya diterapkan, Anda harus melakukan salah satu hal berikut:
- Untuk mempersempit set akun utama yang kebijakan Batas Akses Akun Utama diterapkan untuknya, Anda dapat mengubah kondisi dalam binding kebijakan. Untuk mengubah kondisi dalam binding, edit binding kebijakan.
- Untuk menerapkan kebijakan Batas Akses Akun Utama untuk set akun utama tambahan, buat binding kebijakan baru yang mengikat kebijakan ke set akun utama tersebut.
- Untuk menghapus kebijakan Principal Access Boundary dari set akun utama, hapus binding kebijakan yang mengikat kebijakan ke set akun utama.
Mengedit pengikatan kebijakan yang ada untuk kebijakan Batas Akses Akun Utama
Setelah membuat binding kebijakan, Anda dapat mengedit binding untuk mengubah kondisi dalam binding atau nama tampilan binding.
Anda dapat mengedit binding kebijakan menggunakan konsol Cloud de Confiance , gcloud CLI, atau IAM REST API.
Konsol
Di konsol Cloud de Confiance , buka halaman Principal Access Boundary policies.
Pilih organisasi yang memiliki kebijakan Batas Akses Akun Utama yang ingin Anda edit.
Klik ID kebijakan Principal Access Boundary yang pengikatannya ingin Anda edit.
Klik tab Bindings.
Temukan ID binding yang ingin Anda edit. Di baris binding tersebut, klik Tindakan, lalu klik Edit binding.
Untuk memperbarui nama tampilan binding, edit kolom Nama tampilan.
Untuk menambahkan kondisi ke binding, lakukan hal berikut:
- Klik Tambahkan kondisi.
- Di kolom Title, masukkan ringkasan singkat tentang tujuan kondisi.
- Opsional: Di kolom Description, masukkan deskripsi kondisi yang lebih panjang.
- Di kolom Expression, masukkan ekspresi kondisi yang menggunakan
sintaksis Common Expression Language (CEL). Ekspresi harus merujuk pada atribut
principal.typeatauprincipal.subject. Atribut lainnya tidak didukung. - Klik Simpan.
Untuk memperbarui kondisi yang ada, lakukan hal berikut:
- Klik Edit kondisi di samping nama kondisi.
- Perbarui judul, deskripsi, atau ekspresi kondisi.
- Klik Simpan.
Opsional: Untuk menguji perubahan pada binding kebijakan Principal Access Boundary dengan Policy Simulator, klik Uji perubahan. Tinjau hasil simulasi dan perbarui pengikatan kebijakan jika perlu.
Untuk mempelajari lebih lanjut cara menguji kebijakan Principal Access Boundary dengan Policy Simulator, lihat Policy Simulator untuk kebijakan Principal Access Boundary.
Untuk menyimpan perubahan, klik Save.
gcloud
Perintah
gcloud iam policy-bindings update
memperbarui binding kebijakan yang ada.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
-
BINDING_ID: ID binding kebijakan yang ingin Anda perbarui—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.-
FIELD_TO_UPDATE=UPDATED_VALUE: Kolom yang ingin Anda perbarui dan nilai yang diperbarui yang sesuai.Berikut adalah contoh flag yang dapat Anda gunakan untuk memperbarui kolom dalam binding kebijakan:
-
--display-name=DISPLAY_NAME: Ganti nama tampilan binding denganDISPLAY_NAME. -
--condition-description=CONDITION_DESCRIPTION: Jika binding memiliki kondisi, ganti deskripsi kondisi denganCONDITION_DESCRIPTION. Jika tidak, tambahkan kondisi baru ke binding dengan deskripsi yang ditentukan. Jika Anda menggunakan flag ini untuk memperbarui binding yang tidak memiliki kondisi, Anda juga harus menetapkan flag--condition-expression. -
--condition-expression=CONDITION_EXPRESSION: Jika binding memiliki kondisi, ganti ekspresi kondisi denganCONDITION_EXPRESSION. Jika tidak, tambahkan kondisi baru ke binding dengan ekspresi yang ditentukan. -
--condition-title=CONDITION_TITLE: Jika binding memiliki kondisi, ganti judul kondisi denganCONDITION_TITLE. Jika tidak, tambahkan kondisi baru ke binding dengan judul yang ditentukan. Jika Anda menggunakan flag ini untuk memperbarui binding yang tidak memiliki kondisi, Anda juga harus menetapkan flag--condition-expression.
Untuk daftar lengkap kolom yang dapat Anda perbarui, lihat referensi perintah
gcloud iam policy-bindings update. -
FORMAT: Format respons. Gunakanjsonatauyaml.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud iam policy-bindings update BINDING_ID \ --RESOURCE_TYPE=RESOURCE_ID --location=global \ --FIELD_TO_UPDATE=UPDATED_VALUE \ --format=FORMAT
Windows (PowerShell)
gcloud iam policy-bindings update BINDING_ID ` --RESOURCE_TYPE=RESOURCE_ID --location=global ` --FIELD_TO_UPDATE=UPDATED_VALUE ` --format=FORMAT
Windows (cmd.exe)
gcloud iam policy-bindings update BINDING_ID ^ --RESOURCE_TYPE=RESOURCE_ID --location=global ^ --FIELD_TO_UPDATE=UPDATED_VALUE ^ --format=FORMAT
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.
Update request issued for: [my-binding]
Waiting for operation [organizations/123456789012/locations/global/operations/operation-1715374545618-6181fc272c6f9-55ff07f4-97d0ac76] to complete...done.
Updated policyBinding [my-binding].
{
"createTime": "2024-05-06T18:08:24.729843Z",
"displayName": "Updated display name",
"etag": "W/\"xkdnPfTxoxyVqOwhQSJbMg==\"",
"name": "organizations/123456789012/locations/global/policyBindings/example-binding",
"policy": "organizations/123456789012/locations/global/principalAccessBoundaryPolicies/example-pab-policy",
"policyKind": "PRINCIPAL_ACCESS_BOUNDARY",
"policyUid": "puid_9519202237377675265",
"target": {
"principalSet": "//cloudresourcemanager.googleapis.com/organizations/123456789012"
},
"uid": "buid_9904260005517852673",
"updateTime": "2024-05-06T18:11:16.798841Z"
}
REST
Metode
policyBindings.patch
memperbarui binding kebijakan yang ada.
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 perbarui—misalnya,example-binding. -
FIELDS_TO_UPDATE: Daftar kolom yang dipisahkan koma yang ingin Anda perbarui. Jika Anda tidak menentukan kolom yang akan diperbarui, IAM akan mengganti binding yang ada dengan konten isi permintaan.Nilai yang diterima adalah
displayName,condition,condition.expression,condition.title, dancondition.description. DISPLAY_NAME: Opsional. Deskripsi binding yang dapat dibaca manusia—misalnya,Example binding. Nama tampilan dapat terdiri dari maksimal 63 karakter.-
CONDITION_DETAILS: Opsional. Ekspresi kondisi yang menentukan akun utama mana dalam set akun utama yang kebijakan Batas Akses Akun Utama diterapkan. Berisi kolom berikut:-
expression: Ekspresi kondisi yang menggunakan sintaksis Common Expression Language (CEL). Ekspresi harus mereferensikan atributprincipal.typeatauprincipal.subject. Atribut lainnya tidak didukung.Ekspresi dapat berisi hingga 10 operator logis (
&&,||,!), dan panjangnya bisa mencapai 250 karakter. -
title: Opsional. Rangkuman singkat dari tujuan terhadap kondisi. -
description: Opsional. Deskripsi panjang dari kondisi.
-
Metode HTTP dan URL:
POST https://iam.googleapis.com/v3/RESOURCE_TYPE/RESOURCE_ID/locations/global/policyBindings/BINDING_ID?updateMask=FIELDS_TO_UPDATE
Meminta isi JSON:
{
"displayName": DISPLAY_NAME,
"condition": {
CONDITION_DETAILS
}
}
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-1715373159010-6181f6fcccfa7-dcd0055c-00c22cad",
"metadata": {
"@type": "type.googleapis.com/google.iam.v3.OperationMetadata",
"createTime": "2024-05-10T20:32:39.254910121Z",
"target": "organizations/123456789012/locations/global/policyBindings/example-binding",
"verb": "update",
"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.