Halaman ini menjelaskan cara menonaktifkan dan mengaktifkan kunci akun layanan menggunakan Google Cloud konsol, Google Cloud CLI, Identity and Access Management API, atau salah satu Library Klien Google Cloud.
Sebelum memulai
Aktifkan IAM API.
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (
roles/serviceusage.serviceUsageAdmin), yang berisi izinserviceusage.services.enable. Pelajari cara memberikan peran.Menyiapkan autentikasi.
Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:
gcloud
Di konsol Google Cloud , aktifkan Cloud Shell.
Di bagian bawah konsol Google Cloud , sesi Cloud Shell akan dimulai dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi pada sesi.
Java
Untuk menggunakan contoh Java di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Jika Anda menggunakan shell lokal, buat kredensial autentikasi lokal untuk akun pengguna Anda:
gcloud auth application-default login
Anda tidak perlu melakukan langkah ini jika menggunakan Cloud Shell.
Jika error autentikasi ditampilkan, dan Anda menggunakan penyedia identitas (IdP) eksternal, konfirmasi bahwa Anda telah login ke gcloud CLI dengan identitas gabungan Anda.
Untuk mengetahui informasi selengkapnya, lihat Menyiapkan ADC untuk lingkungan pengembangan lokal dalam dokumentasi autentikasi Google Cloud .
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Instal Google Cloud CLI.
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud .
-
Memahami kredensial akun layanan.
Peran yang diperlukan
Untuk mendapatkan izin yang
diperlukan untuk menonaktifkan dan mengaktifkan kunci akun layanan,
minta administrator Anda untuk memberi Anda
peran IAM Admin Kunci Akun Layanan (roles/iam.serviceAccountKeyAdmin)
di project, atau akun layanan yang kuncinya ingin Anda
kelola.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Peran dasar IAM juga berisi izin untuk mengelola kunci akun layanan. Anda tidak boleh memberikan peran dasar dalam lingkungan produksi, tetapi Anda dapat memberikannya dalam lingkungan pengembangan atau pengujian.
Menonaktifkan kunci akun layanan
Jika kunci akun layanan dinonaktifkan, Anda tidak dapat menggunakan kunci tersebut untuk melakukan autentikasi dengan Google API. Anda dapat mengaktifkan kunci yang dinonaktifkan kapan saja.
Sebelum menghapus kunci akun layanan, sebaiknya Anda menonaktifkan kunci tersebut, lalu tunggu hingga Anda yakin bahwa kunci tersebut tidak lagi diperlukan. Kemudian, Anda dapat menghapus kunci tersebut.
Anda dapat melihat kunci yang dinonaktifkan di konsol Google Cloud , tetapi Anda tidak dapat menggunakan konsolGoogle Cloud untuk menonaktifkan kunci. Gunakan gcloud CLI atau REST API sebagai gantinya.
gcloud
Jalankan perintah gcloud iam service-accounts keys disable
untuk menonaktifkan kunci akun layanan.
Ganti nilai berikut:
KEY_ID: ID kunci yang akan dinonaktifkan. Untuk menemukan ID kunci tersebut, cantumkan semua kunci untuk akun layanan, identifikasi kunci yang ingin dinonaktifkan, lalu salin ID-nya.SA_NAME: Nama akun layanan yang memiliki kunci tersebut.PROJECT_ID: Project ID Google Cloud Anda.
gcloud iam service-accounts keys disable KEY_ID \ --iam-account=SA_NAME@PROJECT_ID.iam.gserviceaccount.com \ --project=PROJECT_ID
Output:
Disabled key [KEY_ID] for service account [SA_NAME@PROJECT_ID.iam.gserviceaccount.com]
Java
Untuk mempelajari cara menginstal dan menggunakan library klien untuk IAM, lihat library klien IAM. Untuk informasi selengkapnya, lihat dokumentasi referensi API Java IAM.
Untuk melakukan autentikasi ke IAM, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Sebelum memulai.
REST
Metode
projects.serviceAccounts.keys.disable
menonaktifkan kunci akun layanan.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID: Project ID Google Cloud Anda. Project ID adalah string alfanumerik, sepertimy-project.SA_NAME: Nama akun layanan yang kuncinya ingin Anda nonaktifkan.KEY_ID: ID kunci yang ingin dinonaktifkan. Untuk menemukan ID kunci, cantumkan semua kunci untuk akun layanan, identifikasi kunci yang ingin dinonaktifkan, lalu salin ID-nya dari bagian akhir kolomname. ID kunci adalah semua yang ada setelahkeys/.
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/SA_NAME@PROJECT_ID.iam.gserviceaccount.com/keys/KEY_ID:disable
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{
}
Aktifkan kunci akun layanan
Setelah menonaktifkan kunci akun layanan, Anda dapat mengaktifkan kunci tersebut kapan saja, lalu menggunakan kunci tersebut untuk mengautentikasi dengan Google API.
Anda tidak dapat menggunakan konsol Google Cloud untuk mengaktifkan kunci akun layanan. Gunakan gcloud CLI atau REST API sebagai gantinya.
gcloud
Jalankan perintah gcloud iam service-accounts keys enable
untuk mengaktifkan kunci akun layanan.
Ganti nilai berikut:
KEY_ID: ID kunci yang akan diaktifkan. Untuk menemukan ID kunci tersebut, cantumkan semua kunci untuk akun layanan, identifikasi kunci yang ingin diaktifkan, lalu salin ID-nya.SA_NAME: Nama akun layanan yang memiliki kunci tersebut.PROJECT_ID: Google Cloud Project ID Anda.
gcloud iam service-accounts keys enable KEY_ID \ --iam-account=SA_NAME@PROJECT_ID.iam.gserviceaccount.com\ --project=PROJECT_ID
Output:
Enabled key [KEY_ID] for service account [SA_NAME@PROJECT_ID.iam.gserviceaccount.com]
Java
Untuk mempelajari cara menginstal dan menggunakan library klien untuk IAM, lihat library klien IAM. Untuk informasi selengkapnya, lihat dokumentasi referensi API Java IAM.
Untuk melakukan autentikasi ke IAM, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Sebelum memulai.
REST
Metode
projects.serviceAccounts.keys.enable
mengaktifkan kunci akun layanan.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID: Project ID Google Cloud Anda. Project ID adalah string alfanumerik, sepertimy-project.SA_NAME: Nama akun layanan yang kuncinya ingin Anda aktifkan.-
KEY_ID: ID kunci yang ingin Anda aktifkan. Untuk menemukan ID kunci, cantumkan semua kunci untuk akun layanan, identifikasi kunci yang ingin diaktifkan, lalu salin ID-nya dari bagian akhir kolomname. ID kunci adalah semua yang ada setelahkeys/.
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/SA_NAME@PROJECT_ID.iam.gserviceaccount.com/keys/KEY_ID:enable
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{
}
Langkah selanjutnya
- Pelajari cara menghapus kunci akun layanan.
- Pelajari cara mencantumkan dan mendapatkan kunci akun layanan.
- Pelajari cara menggunakan kunci akun layanan untuk melakukan autentikasi sebagai akun layanan.
- Pelajari alternatif untuk kunci akun layanan bagi autentikasi.
- Pahami praktik terbaik untuk mengelola kunci akun layanan.
Coba sendiri
Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
Mulai secara gratis