Dokumen ini menjelaskan cara menggunakan kebijakan penolakan IAM dan batasan kebijakan organisasi untuk mengontrol cara Autokey digunakan dalam organisasi atau folder. Kedua pembatas ini hanya dapat diubah dengan peran tingkat organisasi, sehingga tidak dapat diganti oleh akun utama dengan peran Pemilik atau Admin di tingkat folder atau project.
Kasus penggunaan berikut didukung:
- Mewajibkan kunci dibuat oleh Autokey. Anda dapat memblokir prinsipal agar tidak membuat kunci secara manual sehingga semua kunci dibuat oleh Autokey. Di resource yang tidak mengaktifkan Autokey, Anda tidak dapat membuat kunci.
- Batasi Autokey untuk mengizinkan hanya penyimpanan kunci project khusus atau hanya penyimpanan kunci project yang sama.
- Blokir Autokey sepenuhnya. Tindakan ini memastikan bahwa semua kunci dibuat secara manual.
IAM versus kebijakan organisasi
IAM dan kebijakan organisasi memungkinkan Anda menetapkan batas untuk mengontrol cara penggunaan Autokey Cloud KMS di organisasi Anda.
IAM mengontrol siapa yang diberi otorisasi untuk melakukan tindakan apa pada resource mana. Anda dapat menggunakan IAM untuk membatasi principal mana yang dapat mengaktifkan dan menggunakan Autokey di organisasi Anda.
Kebijakan organisasi mengontrol resource yang dapat dibuat dan cara konfigurasinya. Anda dapat menggunakan kebijakan organisasi kustom untuk membatasi tempat dan cara Autokey dapat diaktifkan.
Anda dapat menggunakan IAM dan kebijakan organisasi bersama-sama untuk membuat sistem batas yang kuat guna mengontrol siapa yang dapat mengaktifkan dan menggunakan Autokey, serta di mana mereka dapat melakukannya.
Sebelum memulai
Untuk mendapatkan izin yang Anda perlukan untuk mengontrol penggunaan Autokey, minta administrator Anda untuk memberi Anda peran IAM berikut pada organisasi:
-
Tetapkan kebijakan organisasi:
Administrator Kebijakan Organisasi (
roles/orgpolicy.policyAdmin) -
Menetapkan kebijakan penolakan IAM:
Deny Admin (
roles/iam.denyAdmin)
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Menggunakan kebijakan penolakan IAM untuk mengontrol Autokey
Kebijakan penolakan IAM memberikan kontrol dari atas ke bawah atas akun utama yang dapat melakukan tindakan tertentu. Kebijakan penolakan yang ditetapkan pada resource tidak dapat diganti oleh pemberian peran IAM atau kebijakan penolakan yang ditetapkan pada resource turunan. Akun utama tidak dapat menyelesaikan tindakan yang memerlukan izin yang ditolak, meskipun izin tersebut disertakan dalam peran yang dimilikinya.
Untuk mempelajari cara membuat kebijakan penolakan IAM, lihat Menolak akses ke resource.
Tabel berikut menunjukkan beberapa contoh kasus penggunaan kebijakan penolakan IAM, termasuk izin yang dapat Anda tolak untuk mengontrol Autokey di organisasi Anda dan efek penolakan setiap izin.
Menggunakan batasan kebijakan organisasi kustom untuk mengontrol Autokey
Batasan kebijakan organisasi kustom memberikan kontrol dari bawah ke atas tentang tempat dan cara Autokey dapat dikonfigurasi. Batasan dapat diganti dengan batasan yang diterapkan pada resource turunan. Namun, mengubah batasan memerlukan izin tingkat organisasi, sehingga pokok dengan izin tingkat folder atau project tidak dapat mengganti batasan. Meskipun batasan diterapkan, akun utama tidak dapat menyelesaikan tindakan yang dilarang, meskipun mereka memiliki izin yang diperlukan untuk melakukannya.
Untuk mempelajari cara menerapkan batasan kustom di organisasi Anda, lihat Membuat batasan kebijakan organisasi kustom untuk Cloud KMS.
Anda dapat menggabungkan batasan kebijakan organisasi kustom yang dijelaskan di sini dengan kebijakan organisasi CMEK lainnya.
Membatasi mode Autokey
Anda dapat membatasi fungsi Autokey dengan memblokir pembuatan resource AutokeyConfig secara bersyarat. Definisi batasan contoh berikut melarang pembuatan atau update resource AutokeyConfig berdasarkan keyProjectResolutionMode-nya.
name: organizations/ORGANIZATION_ID/customConstraints/custom.restrictAutokeyKeyStorage
resourceTypes:
- cloudkms.googleapis.com/AutokeyConfig
methodTypes:
- CREATE
- UPDATE
condition: "resource.keyProjectResolutionMode == 'KEY_PROJECT_RESOLUTION_MODE')"
actionType: DENY
displayName: Restrict Autokey key storage mode
description: >
Prevent creation or update of AutokeyConfig resources with
`KEY_PROJECT_RESOLUTION_MODE` key resolution mode.
Ganti KEY_PROJECT_RESOLUTION_MODE dengan
keyProjectResolutionMode yang ingin Anda blokir—misalnya, untuk mencegah
siapa pun di organisasi Anda menggunakan penyimpanan kunci dalam project yang sama di
project mereka, tetapkan nilai ini ke RESOURCE_PROJECT.
Melarang pembuatan konfigurasi Autokey di folder
Anda dapat menggunakan kebijakan organisasi kustom untuk mencegah Autokey diaktifkan dalam folder dengan memblokir pembuatan semua resource AutokeyConfig.
Definisi batasan contoh berikut melarang pembuatan resource
AutokeyConfig dalam folder bernama. Meskipun batasan ini diterapkan, konfigurasi yang ada masih dapat diubah.
name: organizations/ORGANIZATION_ID/customConstraints/custom.noNewAutokeyConfigFolder
resourceTypes:
- cloudkms.googleapis.com/AutokeyConfig
methodTypes:
- CREATE
condition: "resource.name == 'folders/FOLDER_ID/autokeyConfig'"
actionType: DENY
displayName: Prohibit Autokey within FOLDER_ID
description: >
Prevent creation of new AutokeyConfig resources within
folders/FOLDER_ID.
Ganti kode berikut:
ORGANIZATION_ID: ID organisasi Anda.FOLDER_IDdengan ID folder tempat Anda ingin memblokir Autokey.
Melarang pembuatan konfigurasi Autokey dalam organisasi
Anda dapat menggunakan kebijakan organisasi kustom untuk mencegah Autokey diaktifkan di seluruh organisasi Anda dengan memblokir pembuatan semua resource AutokeyConfig.
Definisi batasan contoh berikut melarang pembuatan resource
AutokeyConfig dalam seluruh organisasi Anda. Meskipun batasan ini diterapkan, konfigurasi yang ada masih dapat diubah.
name: organizations/ORGANIZATION_ID/customConstraints/custom.noNewAutokeyConfigOrg
resourceTypes:
- cloudkms.googleapis.com/AutokeyConfig
methodTypes:
- CREATE
condition: "resource.name.endsWith('/autokeyConfig')"
actionType: DENY
displayName: Prohibit Autokey within ORGANIZATION_ID
description: >
Prevent creation of new AutokeyConfig resources within organization
ORGANIZATION_ID.
Ganti ORGANIZATION_ID dengan ID organisasi Anda.
Melarang perubahan konfigurasi Autokey pada folder
Anda dapat menggunakan kebijakan organisasi kustom untuk memblokir perubahan konfigurasi Autokey dalam folder dengan memblokir pembuatan atau update semua resource AutokeyConfig.
Definisi batasan contoh berikut melarang pembuatan atau pembaruan resource
AutokeyConfig dalam folder bernama.
name: organizations/ORGANIZATION_ID/customConstraints/custom.noChangeAutokeyConfigFolder
resourceTypes:
- cloudkms.googleapis.com/AutokeyConfig
methodTypes:
- CREATE
- UPDATE
condition: "resource.name == 'folders/FOLDER_ID/autokeyConfig'"
actionType: DENY
displayName: Prohibit Autokey within FOLDER_ID
description: >
Prevent creation or update of AutokeyConfig resources within
folders/FOLDER_ID.
Ganti kode berikut:
ORGANIZATION_ID: ID organisasi Anda.FOLDER_IDdengan ID folder tempat Anda ingin memblokir Autokey.
Melarang perubahan konfigurasi Autokey dalam organisasi
Anda dapat menggunakan kebijakan organisasi kustom untuk mencegah konfigurasi Autokey diubah di mana pun di organisasi Anda dengan memblokir pembuatan atau update semua resource AutokeyConfig.
Definisi batasan contoh berikut melarang pembuatan atau pembaruan resource
AutokeyConfig di seluruh organisasi Anda.
name: organizations/ORGANIZATION_ID/customConstraints/custom.noChangeAutokeyConfigOrg
resourceTypes:
- cloudkms.googleapis.com/AutokeyConfig
methodTypes:
- CREATE
- UPDATE
condition: condition: "resource.name.endsWith('/autokeyConfig')"
actionType: DENY
displayName: Prohibit Autokey within ORGANIZATION_ID
description: >
Prevent creation or update of AutokeyConfig resources within
ORGANIZATION_ID.
Ganti ORGANIZATION_ID dengan ID organisasi Anda.
Izinkan hanya konfigurasi Autokey DISABLED
Definisi batasan contoh berikut melarang siapa pun membuat atau
memperbarui resource AutokeyConfig dalam seluruh organisasi, kecuali jika
keyProjectResolutionMode ditetapkan secara eksplisit ke DISABLED.
name: organizations/ORGANIZATION_ID/customConstraints/custom.onlyDisabledAutokeyConfig
resourceTypes:
- cloudkms.googleapis.com/AutokeyConfig
methodTypes:
- CREATE
- UPDATE
condition: "resource.keyProjectResolutionMode=='DISABLED'"
actionType: ALLOW
displayName: Prohibit Autokey within the organization
description: >
Prevent creation or update of `AutokeyConfig` resources within
organization ORGANIZATION_ID unless the `keyProjectResolutionMode`
is `DISABLED`.
Melarang konfigurasi Autokey tingkat project
Definisi batasan contoh berikut melarang siapa pun membuat atau
memperbarui resource AutokeyConfig di project, tanpa memblokir konfigurasi
tingkat folder. Selama batasan ini diterapkan, resource AutokeyConfig level project yang ada sebelumnya tetap berlaku, tetapi semua project lain harus terus mewarisi AutokeyConfig dari folder induknya.
name: organizations/ORGANIZATION_ID/customConstraints/custom.noAutokeyConfigProject
resourceTypes:
- cloudkms.googleapis.com/AutokeyConfig
methodTypes:
- CREATE
- UPDATE
condition: "resource.name.startsWith('projects/')"
actionType: DENY
displayName: Block project-level Autokey within the organization
description: >
Prevent creation or update of `AutokeyConfig` resources on projects within
organization ORGANIZATION_ID. Existing project-level AutokeyConfig
resources remain in effect, but all other projects must inherit the
AutokeyConfig from their parent folder.
Contoh kasus penggunaan
Bagian berikut memberikan contoh yang menggabungkan kebijakan penolakan IAM, kebijakan organisasi kustom, dan kebijakan organisasi standar.
Mewajibkan kunci dibuat oleh Autokey
Jika ingin mewajibkan CMEK menggunakan Autokey dalam folder, Anda dapat melakukannya dengan menggabungkan kontrol akses IAM dengan kebijakan organisasi CMEK. Cara kerjanya adalah dengan menghapus izin pembuatan kunci dari prinsipal selain agen layanan Cloud KMS, lalu mewajibkan semua resource dilindungi oleh CMEK menggunakan project kunci Autokey.
Untuk menerapkan penggunaan Autokey dalam folder, selesaikan langkah-langkah berikut:
Blokir pembuatan kunci manual di project kunci dengan menerapkan kebijakan penolakan IAM. Dalam kebijakan penolakan, tolak izin
cloudkms.cryptoKeys.createuntuk semua akun utama, kecuali Agen Layanan Cloud KMS. Jika folder menggunakan penyimpanan kunci project khusus, terapkan kebijakan penolakan ke project kunci khusus. Jika folder menggunakan penyimpanan kunci dalam project yang sama, terapkan kebijakan penolakan ke project resource.Jika kunci tidak dapat dibuat secara manual, hanya kunci yang dibuat oleh Autokey yang dapat dibuat di project ini.
Mewajibkan resource yang baru dibuat dalam folder dilindungi menggunakan CMEK dengan menerapkan batasan
constraints/gcp.restrictNonCmekServices.Untuk mengetahui informasi selengkapnya tentang batasan ini, termasuk daftar layanan yang mendukung batasan ini, lihat Mewajibkan perlindungan CMEK.
Mewajibkan kunci yang digunakan untuk CMEK berasal dari project kunci khusus atau dari project yang penyimpanan kunci dalam project yang sama diaktifkan dengan menerapkan batasan
constraints/gcp.restrictCmekCryptoKeyProjects. Untuk mengetahui informasi selengkapnya tentang batasan ini, termasuk daftar layanan yang mendukung batasan ini, lihat Membatasi penggunaan kunci Cloud KMS untuk CMEK.
Melarang Autokey sepenuhnya
Jika ingin memblokir penggunaan Autokey sepenuhnya dalam organisasi atau folder, Anda dapat melakukannya menggunakan kebijakan penolakan IAM atau batasan kebijakan organisasi kustom. Untuk jaminan berlapis, Anda dapat menggunakan keduanya secara bersamaan.
Untuk memblokir Autokey sepenuhnya dalam organisasi atau folder, selesaikan langkah-langkah berikut:
Jika Autokey sudah diaktifkan di mana saja dalam organisasi atau folder, nonaktifkan Autokey terlebih dahulu.
Blokir pengguna agar tidak mengonfigurasi Autokey dengan menerapkan kebijakan penolakan IAM. Dalam kebijakan penolakan, tolak izin
cloudkms.autokeyConfigs.updateuntuk semua akun utama. Jika Autokey dinonaktifkan di mana pun dan tidak ada prinsipal yang dapat mengubah resourceAutokeyConfig, Autokey akan tetap dinonaktifkan sepenuhnya.Opsional: Langkah-langkah sebelumnya sudah cukup untuk mencegah siapa pun mengaktifkan Autokey. Namun, jika menginginkan lapisan jaminan lain, Anda juga dapat menerapkan batasan kebijakan organisasi kustom untuk hanya mengizinkan resource
AutokeyConfigjika Autokey dinonaktifkan.
Jika Anda menerapkan kebijakan penolakan IAM dan batasan kebijakan organisasi kustom yang dijelaskan di sini, tidak ada akun utama yang dapat mengaktifkan Autokey di resource tanpa membatalkan atau memperbarui kedua pembatasan ini terlebih dahulu.
Langkah berikutnya
- Pelajari kebijakan organisasi CMEK lebih lanjut.
- Pelajari lebih lanjut kebijakan penolakan IAM.
- Pelajari lebih lanjut layanan Kebijakan Organisasi.
- Pelajari lebih lanjut batasan kebijakan organisasi kustom.