Dengan Access Context Manager, Anda dapat melakukan pembaruan massal pada resource yang termasuk dalam kebijakan akses organisasi, seperti tingkat akses dan perimeter layanan.
Perubahan pada resource Anda hanya diterapkan jika semua bagian operasi massal berhasil. Misalnya, jika operasi massal Anda mencoba menghapus tingkat akses yang digunakan oleh perimeter layanan, error akan muncul. Karena terjadi error, seluruh operasi akan gagal dan tidak ada resource yang diperbarui.
Topik ini hanya menjelaskan penggantian tingkat akses secara massal. Untuk mengetahui informasi selengkapnya tentang penggantian massal perimeter layanan, lihat dokumentasi Kontrol Layanan VPC.
Sebelum memulai
Karena operasi massal memengaruhi semua tingkat akses untuk organisasi Anda, sebaiknya Anda mendapatkan daftar lengkap tingkat akses. Daftar ini dapat diformat sebagai YAML, yang juga dapat mempermudah perubahan massal pada tingkat akses Anda.
Untuk mendapatkan daftar tingkat akses yang diformat, lihat Daftar tingkat akses (diformat).
Mengganti tingkat akses secara massal
Bagian berikut menjelaskan cara mengganti tingkat akses secara massal.
gcloud
Untuk mengganti semua tingkat akses secara massal, gunakan perintah replace-all
.
gcloud access-context-manager levels replace-all \ --source-file=FILE \ --etag=ETAG \ [--policy=POLICY_NAME]
Dengan keterangan:
FILE adalah nama file .yaml yang menentukan kondisi baru untuk tingkat akses yang ada.
Contoh:
- name: accessPolicies/11271009391/accessLevels/corpnet_access title: Corpnet Access description: Permit access to corpnet. basic: combiningFunction: AND conditions: - ipSubnetworks: - 252.0.2.0/24 - 2001:db8::/32 - name: accessPolicies/11271009391/accessLevels/prodnet_access title: Prodnet Access description: Permit access to prodnet. basic: combiningFunction: OR conditions: - members: - user:exampleuser@example.com - serviceAccount:exampleaccount@example.iam.gserviceaccount.com - ipSubnetworks: - 176.0.2.0/24
Untuk contoh lebih lanjut tentang struktur kondisi YAML, lihat contoh file YAML.
ETAG (opsional) adalah string yang mewakili versi target kebijakan akses organisasi Anda. Jika Anda tidak menyertakan tag, operasi massal akan menargetkan versi terbaru kebijakan akses organisasi Anda.
Untuk mendapatkan etag terbaru kebijakan akses Anda,
list
kebijakan akses Anda.POLICY_NAME adalah nama kebijakan akses organisasi Anda. Nilai ini hanya diperlukan jika Anda belum menetapkan kebijakan akses default.
API
Untuk mengganti semua tingkat akses secara massal,
panggil accessLevels.replaceAll
.
POST https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/accessLevels.replaceAll?alt=json
Dengan keterangan:
- POLICY_NAME adalah nama kebijakan akses organisasi Anda.
Isi permintaan
Isi permintaan harus menyertakan daftar objek AccessLevel
yang menentukan perubahan yang ingin Anda buat.
Secara opsional, untuk menargetkan versi kebijakan akses organisasi Anda tertentu, Anda dapat menyertakan etag. Jika Anda tidak menyertakan etag, operasi massal akan menargetkan versi terbaru kebijakan akses organisasi Anda.
Contoh:
{ "accessLevels": [ object (AccessLevel), object (AccessLevel), ... ] "etag": string }
Isi respons
Jika berhasil, isi respons untuk panggilan akan berisi resource Operation
yang memberikan detail tentang operasi pasca.
Contoh respons:
{
"name": "operations/accessPolicies/11271009391/replaceLevels/1583523446234255",
"done": true,
"response": {
"@type": "type.googleapis.com/google.identity.accesscontextmanager.v1.ReplaceAccessLevelsResponse",
"accessLevels": [
{
"name": "accessPolicies/11271009391/accessLevels/corpnet_access",
"title": "Corpnet access",
"description": "Permit access to corpnet.",
"basic": {
"conditions": [
{
"ipSubnetworks": [
"252.0.2.0/24"
]
}
]
}
},
{
"name": "accessPolicies/11271009391/accessLevels/prodnet_access",
"title": "Prodnet access",
"description": "Permit access to prodnet.",
"basic": {
"conditions": [
{
"ipSubnetworks": [
"176.0.2.0/24"
]
}
]
}
}
]
}
}