Dengan Access Context Manager, Anda dapat melakukan update massal pada resource yang termasuk dalam kebijakan akses organisasi Anda, 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 error terjadi, seluruh operasi akan gagal dan tidak ada resource yang diupdate.
Topik ini hanya menjelaskan penggantian tingkat akses secara massal. Untuk mengetahui informasi selengkapnya tentang penggantian perimeter layanan secara massal, lihat dokumentasi Kontrol Layanan VPC.
Sebelum memulai
Karena operasi massal memengaruhi semua tingkat akses untuk organisasi Anda, sebaiknya dapatkan daftar lengkap tingkat akses Anda. Daftar ini dapat diformat sebagai YAML, yang juga dapat memudahkan perubahan massal pada tingkat akses Anda.
Untuk mendapatkan daftar tingkat akses yang diformat, lihat Mencantumkan tingkat akses (diformat).
Mengganti tingkat akses secara massal
Bagian berikut menjelaskan cara mengganti tingkat akses Anda 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:
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/24Untuk contoh lebih lanjut tentang struktur YAML kondisi, lihat contoh file YAML.
ETAG (opsional) adalah string yang merepresentasikan target versi kebijakan akses organisasi Anda. Jika Anda tidak menyertakan etag, operasi massal akan menargetkan versi terbaru kebijakan akses organisasi Anda.
Untuk mendapatkan ETag terbaru kebijakan akses Anda,
listkebijakan 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:
- POLICY_NAME adalah nama kebijakan akses organisasi Anda.
Isi permintaan
Isi permintaan harus menyertakan daftar AccessLevel
objek yang menentukan perubahan yang ingin Anda lakukan.
Secara opsional, untuk menargetkan versi tertentu dari kebijakan akses organisasi, Anda dapat menyertakan etag. Jika Anda tidak menyertakan etag, operasi massal akan menargetkan versi terbaru dari kebijakan akses organisasi Anda.
Contoh:
{ "accessLevels": [ object (AccessLevel), object (AccessLevel), ... ] "etag": string }
Isi respons
Jika berhasil, isi respons untuk panggilan berisi resource
Operation yang memberikan detail tentang
pasca-operasi.
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"
]
}
]
}
}
]
}
}