Agen Layanan Container Registry adalah akun layanan yang dikelola Google yang bertindak atas nama Container Registry saat berinteraksi dengan layanan Google Cloud.
Untuk menerapkan prinsip keamanan hak istimewa terendah, akun layanan ini diberi peran Agen Layanan Container Registry dalam project yang mengaktifkan Container Registry API setelah 5 Oktober 2020. Peran ini memiliki izin berikut:
- Publikasikan topik:
pubsub.topics.publish
- Membaca ACL objek penyimpanan:
storage.objects.getIamPolicy
- Membaca metadata dan data objek penyimpanan:
storage.objects.get
- Mencantumkan objek penyimpanan dalam bucket dan membaca metadata objek:
storage.objects.list
Sebelumnya, akun layanan Container Registry diberi peran Editor. Karena peran Editor memberikan izin untuk membuat dan menghapus sebagian besar resource dalam sebuah project, sebaiknya batasi izin jika akun layanan Container Registry Anda memiliki peran ini.
Menemukan ID akun layanan
Akun layanan Container Registry memiliki ID berikut:
service-[PROJECT_NUMBER]@containerregistry.iam.gserviceaccount.com
Untuk menemukan akun layanan, lihat daftar akun utama yang memiliki akses ke project Anda.
Konsol
Buka halaman IAM.
Untuk menambahkan akun yang dikelola Google ke daftar akun utama, pilih kotak centang Include Google- provided rolegrants.
Untuk memfilter daftar, masukkan
containerregistry
di kolom Filter.
gcloud
Jalankan perintah berikut untuk mencantumkan akun utama yang berisi string
containerregistry
:
gcloud projects get-iam-policy PROJECT-ID \
--flatten="bindings[].members"
--filter="containerregistry"
Ganti PROJECT-ID dengan ID project Google Cloud Anda.
Memverifikasi izin saat ini
Untuk memverifikasi izin akun layanan Container Registry Anda saat ini, jalankan perintah:
gcloud projects get-iam-policy PROJECT-ID \
--flatten="bindings[].members" \
--format='table(bindings.role)' \
--filter="bindings.members:service-PROJECT-NUMBER@containerregistry.iam.gserviceaccount.com"
Dari mana
- PROJECT-ID adalah project ID Google Cloud.
- PROJECT-NUMBER adalah nomor project Google Cloud.
Anda dapat memperoleh project ID dan nomor project di Google Cloud Console atau dengan perintah berikut:
PROJECT=$(gcloud config get-value project)
echo $PROJECT && gcloud projects list --filter="$PROJECT" --format="value(PROJECT_NUMBER)"
Mengubah izin
Untuk memberikan peran Container Registry Service Agent dan mencabut peran Editor:
Berikan peran Agen Layanan Container Registry dengan perintah berikut:
gcloud projects add-iam-policy-binding PROJECT-ID \ --member=serviceAccount:service-PROJECT-NUMBER@containerregistry.iam.gserviceaccount.com --role=roles/containerregistry.ServiceAgent
Cabut peran Editor dengan perintah berikut:
gcloud projects remove-iam-policy-binding PROJECT-ID \ --member=serviceAccount:service-PROJECT-NUMBER@containerregistry.iam.gserviceaccount.com --role=roles/editor