Dokumen ini menunjukkan cara mengamankan akses ke Konsol Google Cloud dan Google Cloud API menggunakan aturan berbasis konteks.
Akses Kontekstual untuk konsol Google Cloud dan Google Cloud API membatasi akses ke Konsol Google Cloud dan Google Cloud API dengan aturan berbasis konteks. BeyondCorp Enterprise adalah bagian dari BeyondCorp Enterprise dan membantu memastikan bahwa individu dan grup dalam organisasi Anda yang memenuhi persyaratan akses yang ditetapkan dapat mengakses Google Cloud Console dan Google Cloud API (termasuk akses dari Google Cloud CLI).
Untuk mengamankan konsol Google Cloud dan Google Cloud API, selesaikan langkah-langkah berikut:
- [Opsional] Deploy Verifikasi Endpoint ke perangkat di organisasi Anda.
- Buat tingkat akses di Pengelola Akses Konteks.
- Buat grup pengguna yang akan dibatasi oleh pembatasan kontekstual.
- Dapatkan izin Identity and Access Management yang diperlukan.
- Buat binding akses yang menerapkan aturan kontekstual untuk Konsol Google Cloud dan Google Cloud API.
[Opsional] Men-deploy Verifikasi Endpoint
Jika Anda ingin mengamankan akses ke konsol Google Cloud dan Google Cloud API dengan menggunakan atribut perangkat, deploy Endpoint Verification ke perangkat di organisasi Anda.
Verifikasi Endpoint berjalan sebagai ekstensi Chrome di desktop dan laptop untuk pengguna MacOS, Windows, dan Linux. Admin dapat men-deploy-nya ke perangkat milik perusahaan dari konsol Google Admin atau anggota organisasi dapat menginstal sendiri.
Membuat tingkat akses
Anda perlu menentukan tingkat akses yang dapat digunakan saat menentukan akses ke konsol Google Cloud dan Google Cloud API dengan membuat tingkat akses dasar di Access Context Manager.
Membuat grup pengguna
Buat grup pengguna yang harus terikat oleh pembatasan kontekstual. Setiap pengguna dalam grup ini yang juga merupakan anggota organisasi Anda harus memenuhi tingkat akses yang Anda buat sebelumnya untuk mengakses konsol Google Cloud dan Google Cloud API.
Memberikan izin IAM yang diperlukan
Berikan izin IAM di tingkat organisasi yang akan diperlukan untuk membuat binding akses Access Context Manager.
Konsol
Buka halaman IAM & Admin di Konsol Google Cloud.
Klik Add dan konfigurasikan hal berikut:
- Anggota baru: Tentukan pengguna atau grup yang ingin Anda beri izin.
- Pilih peran: Pilih Access Context Manager > Cloud Access Binding Admin.
Klik Save.
gcloud
Pastikan Anda diautentikasi dengan hak istimewa yang memadai untuk menambahkan izin IAM di tingkat organisasi. Setidaknya, Anda memerlukan peran Organization Admin.
Setelah mengonfirmasi bahwa Anda memiliki izin yang tepat, login dengan:
gcloud auth login
Tetapkan peran
GcpAccessAdmin
dengan menjalankan perintah berikut:gcloud organizations add-iam-policy-binding ORG_ID \ --member=user:EMAIL \ --role=roles/accesscontextmanager.gcpAccessAdmin
ORG_ID
adalah ID untuk organisasi Anda. Jika belum memiliki ID organisasi, Anda dapat menggunakan perintah berikut untuk menemukannya:gcloud organizations list
EMAIL
adalah alamat email orang atau grup yang ingin diberi peran.
Membuat binding akses
Binding akses adalah pemetaan antara grup pengguna yang Anda buat sebelumnya dan tingkat akses Access Context Manager yang Anda tetapkan untuk mengakses konsol Google Cloud dan Google Cloud API.
Anda dapat membuat binding akses dengan salah satu cara berikut:
- Pengikatan akses antara grup dan tingkat akses.
- Akses binding antara grup dan tingkat akses dengan konfigurasi uji coba. Dengan konfigurasi uji coba, Anda dapat membuat binding akses antara grup dan tingkat akses uji coba, atau antara grup, tingkat akses, dan tingkat akses uji coba.
Membuat binding akses dengan level akses
Konsol
Buka halaman BeyondCorp Enterprise di Konsol Google Cloud.
Pilih organisasi, lalu klik Pilih.
Klik Kelola akses untuk memilih grup pengguna mana yang harus memiliki akses.
Klik Add dan konfigurasikan hal berikut:
- Grup anggota: Tentukan grup yang ingin Anda beri akses. Hanya grup yang belum terikat ke tingkat akses yang dapat dipilih.
- Select access level: Pilih tingkat akses yang harus diterapkan ke grup.
Klik Save.
gcloud
Anda dapat melihat Google Cloud CLI untuk mengetahui informasi selengkapnya tentang hal ini dan perintah gcloud access-context-manager cloud-bindings lainnya, termasuk opsi flag tambahan.
gcloud access-context-manager cloud-bindings create \
--group-key GROUP_ID \
--level ACCESS_LEVEL \
--organization ORG_ID
Dengan keterangan:
-
GROUP_ID
adalah ID Grup untuk grup pengguna yang Anda buat sebelumnya.Jika tidak memiliki ID Grup yang tersedia, Anda dapat mengambilnya dengan memanggil metode
get
pada resourceGroups
. -
ORG_ID
adalah ID untuk organisasi yang Anda gunakan saat membuat peranGcpAccessAdmin
. Jika propertiaccess-context-manager/organization
belum ditetapkan, gantiORG_ID
di flag--organization
opsional dengan ID untuk organisasi yang Anda gunakan saat membuat peranGcpAccessAdmin
. -
POLICY_ID
adalah ID kebijakan akses organisasi Anda. -
ACCESS_LEVEL
dalam bentukaccessPolicies/
. Nilai untukPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
danACCESS_LEVEL_NAME
dapat ditemukan di Access Context Manager dari saat Anda membuat tingkat akses.
API
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
ORG_ID
adalah ID untuk organisasi yang Anda gunakan saat membuat peranGcpAccessAdmin
. -
GROUP_ID
adalah ID Grup untuk grup pengguna yang Anda buat sebelumnya.Jika tidak memiliki ID Grup yang tersedia, Anda dapat mengambilnya dengan memanggil metode
get
pada resourceGroups
. -
POLICY_ID
adalah ID kebijakan akses organisasi Anda. -
ACCESS_LEVEL
dalam bentukaccessPolicies/
. Nilai untukPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
danACCESS_LEVEL_NAME
dapat ditemukan di Access Context Manager dari saat Anda membuat tingkat akses.
Metode HTTP dan URL:
POST https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings
Isi JSON permintaan:
{ "groupKey": "GROUP_ID", "accessLevels": [ "ACCESS_LEVEL" ], }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings"
PowerShell
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ] }
Membuat binding akses dengan konfigurasi uji coba
Anda dapat membuat binding akses dengan konfigurasi uji coba untuk memahami dampak tingkat akses di lingkungan Anda dalam skenario berikut:
- Untuk mengevaluasi dampak tingkat akses sebelum menerapkannya, buat binding akses dengan tingkat akses uji coba.
- Untuk menerapkan tingkat akses dan mengevaluasi dampak tingkat akses uji coba secara bersamaan, buat binding akses dengan tingkat akses aktif dan dengan tingkat akses uji coba.
Binding akses dengan tingkat akses uji coba tidak mencegah akses, tetapi mencatat pelanggaran tingkat akses uji coba. Untuk melihat detail log, lihat log penolakan.
Membuat binding akses dengan tingkat akses uji coba
gcloud
gcloud access-context-manager cloud-bindings create \
--group-key = GROUP_ID \
--dry-run-level = DRY_RUN_ACCESS_LEVEL \
--organization ORG_ID
Dengan keterangan:
-
GROUP_ID
adalah ID Grup untuk grup pengguna yang Anda buat sebelumnya.Jika tidak memiliki ID Grup yang tersedia, Anda dapat mengambilnya dengan memanggil metode
get
pada resourceGroups
. -
ORG_ID
adalah ID untuk organisasi yang Anda gunakan saat membuat peranGcpAccessAdmin
. Jika propertiaccess-context-manager/organization
belum ditetapkan, gantiORG_ID
di flag--organization
opsional dengan ID untuk organisasi yang Anda gunakan saat membuat peranGcpAccessAdmin
. -
POLICY_ID
adalah ID kebijakan akses organisasi Anda. -
DRY_RUN_ACCESS_LEVEL
adalahACCESS_LEVEL
yang ingin Anda pahami efeknya.ACCESS_LEVEL
dalam bentukaccessPolicies/
. Nilai untukPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
danACCESS_LEVEL_NAME
dapat ditemukan di Access Context Manager dari saat Anda membuat tingkat akses.
API
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
ORG_ID
adalah ID untuk organisasi yang Anda gunakan saat membuat peranGcpAccessAdmin
. -
GROUP_ID
adalah ID Grup untuk grup pengguna yang Anda buat sebelumnya.Jika tidak memiliki ID Grup yang tersedia, Anda dapat mengambilnya dengan memanggil metode
get
pada resourceGroups
. -
POLICY_ID
adalah ID kebijakan akses organisasi Anda. -
DRY_RUN_ACCESS_LEVEL
adalahACCESS_LEVEL
yang ingin Anda pahami efeknya.ACCESS_LEVEL
dalam bentukaccessPolicies/
. Nilai untukPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
danACCESS_LEVEL_NAME
dapat ditemukan di Access Context Manager dari saat Anda membuat tingkat akses.
Metode HTTP dan URL:
POST https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings
Isi JSON permintaan:
{ "groupKey": "GROUP_ID", "dryRunAccessLevels": [ "DRY_RUN_ACCESS_LEVEL" ] }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings"
PowerShell
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "dryRunAccessLevels": [ "accessPolicies/305009197125/accessLevels/another" ] }
Buat binding akses dengan tingkat akses dan tingkat akses uji coba
gcloud
gcloud access-context-manager cloud-bindings create \
--group-key = GROUP_ID \
--level = ACCESS_LEVEL \
--dry-run-level = DRY_RUN_ACCESS_LEVEL \
--organization ORG_ID
Dengan keterangan:
-
GROUP_ID
adalah ID Grup untuk grup pengguna yang Anda buat sebelumnya.Jika tidak memiliki ID Grup yang tersedia, Anda dapat mengambilnya dengan memanggil metode
get
pada resourceGroups
. -
ORG_ID
adalah ID untuk organisasi yang Anda gunakan saat membuat peranGcpAccessAdmin
. Jika propertiaccess-context-manager/organization
belum ditetapkan, gantiORG_ID
di flag--organization
opsional dengan ID untuk organisasi yang Anda gunakan saat membuat peranGcpAccessAdmin
. -
POLICY_ID
adalah ID kebijakan akses organisasi Anda. -
ACCESS_LEVEL
dalam bentukaccessPolicies/
. Nilai untukPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
danACCESS_LEVEL_NAME
dapat ditemukan di Access Context Manager dari saat Anda membuat tingkat akses. -
DRY_RUN_ACCESS_LEVEL
adalahACCESS_LEVEL
yang ingin Anda pahami efeknya.ACCESS_LEVEL
dalam bentukaccessPolicies/
. Nilai untukPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
danACCESS_LEVEL_NAME
dapat ditemukan di Access Context Manager dari saat Anda membuat tingkat akses.
API
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
ORG_ID
adalah ID untuk organisasi yang Anda gunakan saat membuat peranGcpAccessAdmin
. -
GROUP_ID
adalah ID Grup untuk grup pengguna yang Anda buat sebelumnya.Jika tidak memiliki ID Grup yang tersedia, Anda dapat mengambilnya dengan memanggil metode
get
pada resourceGroups
. -
POLICY_ID
adalah ID kebijakan akses organisasi Anda. -
ACCESS_LEVEL
dalam bentukaccessPolicies/
. Nilai untukPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
danACCESS_LEVEL_NAME
dapat ditemukan di Access Context Manager dari saat Anda membuat tingkat akses. -
DRY_RUN_ACCESS_LEVEL
adalahACCESS_LEVEL
yang ingin Anda pahami efeknya.ACCESS_LEVEL
dalam bentukaccessPolicies/
. Nilai untukPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
danACCESS_LEVEL_NAME
dapat ditemukan di Access Context Manager dari saat Anda membuat tingkat akses.
Metode HTTP dan URL:
POST https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings
Isi JSON permintaan:
{ "groupKey": "GROUP_ID", "accessLevels": [ "ACCESS_LEVEL" ], "dryRunAccessLevels": [ "DRY_RUN_ACCESS_LEVEL" ] }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings"
PowerShell
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings" | Select-Object -Expand Content
Anda akan melihat respons JSON seperti berikut:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ], "dryRunAccessLevels": [ "accessPolicies/305009197125/accessLevels/another" ] }
Melihat log penolakan
Setelah membuat konfigurasi uji coba, Anda dapat meninjau log untuk mengidentifikasi tempat konfigurasi uji coba menolak akses.
Tabel berikut mencantumkan kolom log yang dapat Anda gunakan untuk membuat dan menjalankan kueri guna mendapatkan log:
Nama kolom | Deskripsi |
---|---|
protoPayload > authenticationInfo > principalEmail |
ID email akun utama yang aksesnya ditolak. |
protoPayload > metadata > deniedApplications |
Nama aplikasi yang aksesnya ditolak. |
protoPayload > metadata > evaluationResult |
Hasil evaluasi kebijakan akses aktif. Nilai yang mungkin:
GRANTED atau DENIED . |
protoPayload > metadata > appliedAccessLevels |
Tingkat akses yang diterapkan yang diperlukan oleh kebijakan akses aktif. |
protoPayload > metadata > appliedDryRunAccessLevels |
Tingkat akses yang diterapkan yang diperlukan oleh kebijakan akses uji coba. |
protoPayload > metadata > dryRunEvaluationResult |
Hasil evaluasi kebijakan akses uji coba, yang menunjukkan
tindakan yang diinginkan saat kebijakan akses diterapkan.
Nilai yang mungkin:
GRANTED atau DENIED . |
Untuk mengetahui detail tentang cara membuat kueri untuk log, lihat Bahasa kueri logging.
Konsol
Di menu navigasi konsol Google Cloud, klik Logging, lalu klik Logs Explorer.
Di kolom Query, masukkan filter kueri seperti filter berikut, lalu klik Run query.
severity="ERROR" AND (protoPayload.metadata.evaluationResult=DENIED OR protoPayload.metadata.dryRunEvaluationResult=DENIED) AND protoPayload.metadata.@type="type.googleapis.com/google.cloud.audit.ContextAwareAccessAuditMetadata" AND protoPayload.metadata.deniedApplications.name="CLOUD_PLATFORM"
Lihat log di bagian Query results.
gcloud
Untuk melihat log menggunakan gcloud CLI, jalankan perintah seperti berikut:
gcloud logging read 'severity="ERROR" AND
(protoPayload.metadata.evaluationResult=DENIED OR protoPayload.metadata.dryRunEvaluationResult=DENIED) AND
protoPayload.metadata.@type="type.googleapis.com/google.cloud.audit.ContextAwareAccessAuditMetadata" AND
protoPayload.metadata.deniedApplications.name="CLOUD_PLATFORM"'
Mengelola binding akses
Setelah binding akses dibuat untuk sekelompok pengguna, akses ke Konsol Google Cloud dan Google Cloud API dikontrol berdasarkan kepuasan tingkat akses terikat.
Anda dapat melihat detail binding akses yang Anda buat, mengeditnya, atau menghapusnya.
Melihat binding akses
Konsol
Anda dapat melihat semua binding akses untuk organisasi dan melihat detail binding akses.
gcloud
Untuk melihat semua binding akses, jalankan perintah berikut:
gcloud access-context-manager cloud-bindings list \ --organization ORG_ID
Dengan keterangan:
ORG_ID
adalah ID untuk organisasi yang Anda gunakan saat membuat peranGcpAccessAdmin
. . Jika propertiaccess-context-manager/organization
belum ditetapkan, gantiORG_ID
di flag--organization
opsional dengan ID untuk organisasi yang Anda gunakan saat membuat peranGcpAccessAdmin
.Untuk melihat detail binding akses, jalankan perintah berikut:
gcloud access-context-manager cloud-bindings describe \ --binding=BINDING_ID
Dengan keterangan:
BINDING_ID
adalah ID binding akses atau ID yang sepenuhnya memenuhi syarat untuk binding akses.
API
Lihat semua binding akses:
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
ORG_ID
adalah ID untuk organisasi yang Anda gunakan saat membuat peranGcpAccessAdmin
. Jika propertiaccess-context-manager/organization
belum ditetapkan, gantiORG_ID
di flag--organization
opsional dengan ID untuk organisasi yang Anda gunakan saat membuat peranGcpAccessAdmin
.
Metode HTTP dan URL:
GET https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings"PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings" | Select-Object -Expand ContentAnda akan melihat respons JSON seperti berikut:
{ "name": string, "groupKey": string, "accessLevels": [ string ] "dryRunAccessLevels": [ string ] }
-
Melihat detail binding akses:
Metode HTTP dan URL:
GET https://accesscontextmanager.googleapis.com/v1/BINDING_ID
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://accesscontextmanager.googleapis.com/v1/BINDING_ID"PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://accesscontextmanager.googleapis.com/v1/BINDING_ID" | Select-Object -Expand ContentAnda akan melihat respons JSON seperti berikut:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ], "dryRunAccessLevels": [ "accessPolicies/305009197125/accessLevels/another" ] }
Memperbarui binding akses
Konsol
Anda dapat memperbarui binding akses sesuai kebutuhan.
gcloud
Untuk memperbarui binding akses, misalnya untuk mengubah tingkat akses, jalankan perintah berikut:
gcloud access-context-manager cloud-bindings update \ --binding ACCESS_BINDING \ --level ACCESS_LEVEL
Dengan keterangan:
-
ACCESS_BINDING
dalam bentukorganizations/ORG_ID/gcpUserAccessBindings/ACCESS_BINDING_NAME
. -
ORG_ID
adalah ID untuk organisasi yang Anda gunakan saat membuat peranGcpAccessAdmin
. -
ACCESS_BINDING_NAME
adalah string unik yang ditampilkan untuk IDname
saat binding akses dibuat. - Ganti nilai untuk ACCESS_LEVEL sesuai kebutuhan.
ACCESS_LEVEL
dalam bentukaccessPolicies/
. Nilai untukPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
danACCESS_LEVEL_NAME
dapat ditemukan di Access Context Manager dari saat Anda membuat tingkat akses.
-
Untuk memperbarui binding akses dengan tingkat akses uji coba, jalankan perintah berikut:
gcloud access-context-manager cloud-bindings update --binding=ACCESS_BINDING --dry-run-level=DRY_RUN_ACCESS_LEVEL
Ganti nilai untuk
DRY_RUN_ACCESS_LEVEL
sesuai kebutuhan. FormatnyaaccessPolicies/
.POLICY_ID
/accessLevels/DRY_ACCESS_LEVEL_NAME
Untuk memperbarui binding akses dan mengubah tingkat akses serta tingkat akses uji coba, jalankan perintah berikut:
gcloud access-context-manager cloud-bindings update --binding=ACCESS_BINDING --level=`ACCESS_LEVEL` --dry-run-level=DRY_RUN_ACCESS_LEVEL
Ganti nilai untuk
ACCESS_LEVEL
danDRY_RUN_ACCESS_LEVEL
sesuai kebutuhan.ACCESS_LEVEL
danDRY_RUN_ACCESS_LEVEL
dalam bentukaccessPolicies/
danPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
DRY_RUN_ACCESS_LEVEL
sama denganACCESS_LEVEL
.Untuk menghapus tingkat akses uji coba dari binding akses, jalankan perintah berikut:
gcloud access-context-manager cloud-bindings update --binding=ACCESS_BINDING --dry-run-level=
API
Mengupdate binding akses, seperti untuk mengubah tingkat akses:
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
ACCESS_BINDING_NAME
adalah string unik yang ditampilkan untuk IDname
saat binding akses dibuat. -
ACCESS_LEVEL
dalam bentukaccessPolicies/
. Nilai untukPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
danACCESS_LEVEL_NAME
dapat ditemukan di Access Context Manager dari saat Anda membuat tingkat akses.
Metode HTTP dan URL:
PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels
Isi JSON permintaan:
{ "accessLevels": [ "ACCESS_LEVEL" ] }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels"PowerShell
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels" | Select-Object -Expand ContentAnda akan melihat respons JSON seperti berikut:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ] }
-
Perbarui binding akses dengan tingkat akses uji coba:
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
ACCESS_BINDING_NAME
adalah string unik yang ditampilkan untuk IDname
saat binding akses dibuat. -
DRY_RUN_ACCESS_LEVEL
adalahACCESS_LEVEL
yang ingin Anda pahami efeknya.ACCESS_LEVEL
dalam bentukaccessPolicies/
. Nilai untukPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
danACCESS_LEVEL_NAME
dapat ditemukan di Access Context Manager dari saat Anda membuat tingkat akses.
Metode HTTP dan URL:
PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels
Isi JSON permintaan:
{ "dryRunAccessLevels": [ "DRY_RUN_ACCESS_LEVEL" ] }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels"PowerShell
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels" | Select-Object -Expand ContentAnda akan melihat respons JSON seperti berikut:
{ name: "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", group_key: "045jfvxd0ybeul8", dry_run_access_levels: [ "accessPolicies/305009197125/accessLevels/another" ] }
-
Perbarui binding akses dan ubah tingkat akses serta tingkat akses uji coba:
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
ACCESS_BINDING_NAME
adalah string unik yang ditampilkan untuk IDname
saat binding akses dibuat. -
ACCESS_LEVEL
dalam bentukaccessPolicies/
. Nilai untukPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
danACCESS_LEVEL_NAME
dapat ditemukan di Access Context Manager dari saat Anda membuat tingkat akses. -
DRY_RUN_ACCESS_LEVEL
adalahACCESS_LEVEL
yang ingin Anda pahami efeknya.ACCESS_LEVEL
dalam bentukaccessPolicies/
. Nilai untukPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
danACCESS_LEVEL_NAME
dapat ditemukan di Access Context Manager dari saat Anda membuat tingkat akses.
Metode HTTP dan URL:
PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels,dry_run_access_levels
Isi JSON permintaan:
{ "accessLevels": [ "ACCESS_LEVEL" ], "dryRunAccessLevels": [ "DRY_RUN_ACCESS_LEVEL" ] }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels,dry_run_access_levels"PowerShell
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels,dry_run_access_levels" | Select-Object -Expand ContentAnda akan melihat respons JSON seperti berikut:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ], "dryRunAccessLevels": [ "accessPolicies/305009197125/accessLevels/another" ] }
-
Untuk menghapus tingkat akses uji coba dari binding akses:
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
ACCESS_BINDING_NAME
adalah string unik yang ditampilkan untuk IDname
saat binding akses dibuat.
Metode HTTP dan URL:
PATCH PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels
Isi JSON permintaan:
{ "dryRunAccessLevels": [ ] }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels"PowerShell
Simpan isi permintaan dalam file bernama
request.json
, dan jalankan perintah berikut:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels" | Select-Object -Expand ContentAnda akan menerima kode status yang berhasil (2xx), serta respons yang kosong.
-
Menghapus binding akses
Konsol
Anda dapat menghapus binding akses kapan pun diperlukan.
gcloud
gcloud access-context-manager cloud-bindings delete \
--binding ACCESS_BINDING
Dengan keterangan:
-
ACCESS_BINDING
dalam bentukorganizations/ORG_ID/gcpUserAccessBindings/ACCESS_BINDING_NAME
. -
ACCESS_BINDING_NAME
adalah string unik yang ditampilkan untuk IDname
saat binding akses dibuat.
API
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
ACCESS_BINDING_NAME
adalah string unik yang ditampilkan untuk IDname
saat binding akses dibuat.
Metode HTTP dan URL:
DELETE https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME" | Select-Object -Expand Content
Anda akan menerima kode status yang berhasil (2xx), serta respons yang kosong.
Pertanyaan umum (FAQ)
Berapa lama waktu yang diperlukan hingga binding akses yang baru dibuat berlaku?
Proses ini mungkin memerlukan waktu hingga 24 jam.
Apa yang terjadi jika saya menghapus grup yang memiliki binding akses?
Grup dan binding akan dihapus dan semua pengguna dalam grup tersebut diizinkan akses.
Apa yang terjadi jika saya menghapus tingkat akses yang digunakan dalam access binding?
Tingkat akses tidak akan dapat dipenuhi dan semua pengguna grup terikat ditolak akses.
Apa yang terjadi jika pengguna berada di beberapa grup yang memiliki binding akses?
Pengguna hanya perlu memenuhi tingkat akses salah satu grup tersebut untuk mendapatkan akses.
Bagaimana dengan pengguna yang bukan bagian dari organisasi saya?
Siapa pun yang bukan bagian dari organisasi Anda, meskipun Anda telah menambahkannya ke grup pengguna yang harus terikat oleh pembatasan kontekstual, tidak tunduk pada binding akses.
Langkah selanjutnya
- Untuk mempelajari log audit untuk BeyondCorp Enterprise lebih lanjut, lihat Log audit.
- Untuk mempelajari lebih lanjut logging audit di Pengelola Akses Konteks, termasuk ringkasan operasi API yang dicatat ke dalam log untuk tindakan admin, lihat Mengakses informasi logging audit Pengelola Konteks.