Halaman ini menjelaskan cara membuat kredensial yang berlaku singkat untuk akun layanan, yang dapat Anda gunakan untuk meniru identitas akun layanan. Bergantung pada jenis token yang Anda buat, token yang berlaku singkat memberikan identitas (untuk token ID) atau izin (untuk token akses) yang terkait dengan akun layanan.
Jika arsitektur sistem Anda mengharuskan Anda untuk menggunakan serangkaian panggilan pembuatan token, Anda dapat menggunakan rantai delegasi yang terdiri dari beberapa akun layanan. Dalam sebagian besar kasus, metode langsung, seperti yang dijelaskan di halaman ini, sudah cukup.
Sebelum memulai
-
Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.
-
Aktifkan API IAM and Service Account Credentials:
gcloud services enable iam.googleapis.com
iamcredentials.googleapis.com Pahami akun layanan IAM.
Pahami peniruan identitas akun layanan.
Pahami jenis token yang Anda butuhkan, dan gunakan langkah-langkah yang sesuai yang disediakan di bagian di bawah ini:
Membuat token akses yang berlaku singkat
Token akses diterima untuk autentikasi oleh sebagian besar Google API. Saat Anda membuat token akses dengan menggunakan peniruan akun layanan, token akses akan diberikan tanpa token refresh, yang berarti bahwa saat masa berlaku token berakhir, Anda harus mengulangi proses peniruan identitas untuk membuat token akses baru.
Untuk mengetahui informasi selengkapnya, lihat Token akses.
Untuk membuat token akses yang berlaku singkat, selesaikan tugas berikut:
Memberikan izin yang diperlukan
Permintaan langsung melibatkan dua identitas: pemanggil yang meminta kredensial, dan akun layanan tempat kredensial tersebut dibuat. Cara Anda menyiapkan izin bergantung pada apakah pemanggil melakukan autentikasi sebagai akun layanan atau sebagai Akun Google.
Jika Anda ingin menjalankan perintah REST atau gcloud CLI pada halaman ini dalam lingkungan pengembangan lokal, pemanggil dapat diwakili oleh kredensial pengguna. Untuk workload otomatis, seperti aplikasi yang berjalan di Compute Engine, pemanggil harus diwakili oleh akun layanan.
Akun layanan
Saat aplikasi panggilan menggunakan akun layanan sebagai identitasnya, entity utama berikut akan terlibat:
Akun layanan pemanggil (
CALLER_SA
)Akun layanan ini mewakili aplikasi panggilan, yang mengeluarkan permintaan untuk kredensial yang berlaku singkat.
-
Akun layanan yang memiliki hak istimewa (
PRIV_SA
)Akun layanan ini diberi peran IAM yang diperlukan untuk token yang berlaku singkat. Ini adalah akun layanan tempat token yang berlaku singkat dibuat.
Untuk memberi CALLER_SA
izin untuk membuat kredensial
yang berlaku singkat untuk PRIV_SA
, Anda memberikan
CALLER_SA
peran Pembuat Token Akun Layanan
(roles/iam.serviceAccountTokenCreator
) pada PRIV_SA
.
Berikan peran yang diperlukan pada PRIV_SA
:
Konsol
-
Di konsol Google Cloud, buka halaman Akun Layanan.
- Pilih project.
-
Klik alamat email akun layanan yang memiliki hak istimewa,
PRIV_SA
. - Klik tab Izin.
- Pada Akun utama dengan akses ke akun layanan ini, klik Berikan Akses.
-
Masukkan alamat email akun layanan pemanggil,
CALLER_SA
.Misalnya,
demo@my-project.iam.gserviceaccount.com
. -
Pilih peran Pembuat Token Akun Layanan
(
roles/iam.serviceAccountTokenCreator
). - Klik Simpan untuk memberikan peran ke akun layanan.
gcloud
Perintah
gcloud iam service-accounts add-iam-policy-binding
memberikan peran pada akun layanan.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token dibuat. -
CALLER_SA
: Alamat email akun layanan yang mewakili aplikasi yang meminta token yang berlaku singkat.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud iam service-accounts add-iam-policy-binding PRIV_SA \ --member=serviceAccount:CALLER_SA --role=roles/iam.serviceAccountTokenCreator --format=json
Windows (PowerShell)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ` --member=serviceAccount:CALLER_SA --role=roles/iam.serviceAccountTokenCreator --format=json
Windows (cmd.exe)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ^ --member=serviceAccount:CALLER_SA --role=roles/iam.serviceAccountTokenCreator --format=json
Anda akan melihat respons seperti berikut:
Updated IAM policy for serviceAccount [PRIV_SA]. { "bindings": [ { "members": [ "serviceAccount:CALLER_SA" ], "role": "roles/iam.serviceAccountTokenCreator" } ], "etag": "BwXhCB4eyjY=", "version": 1 }
REST
-
Baca kebijakan izin untuk
PRIV_SA
:Metode
serviceAccounts.getIamPolicy
mendapatkan kebijakan izin akun layanan.Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA:getIamPolicy
Meminta isi JSON:
{ "options": { "requestedPolicyVersion": POLICY_VERSION } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] } ] }
Jika Anda belum memberikan peran apa pun ke akun layanan, respons hanya akan berisi nilai
etag
. Sertakan nilaietag
tersebut di langkah berikutnya. -
Ubah kebijakan izinkan untuk memberi
CALLER_SA
peran Pembuat Token Akun Layanan (roles/iam.serviceAccountTokenCreator
).Misalnya, untuk mengubah contoh respons dari langkah sebelumnya, tambahkan kode berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountTokenCreator", "members": [ "serviceAccount:CALLER_SA" ] } ] }
-
Tulis kebijakan izin yang telah diperbarui:
Metode
serviceAccounts.setIamPolicy
menetapkan kebijakan izin yang telah diperbarui untuk akun layanan.Sebelum menggunakan salah satu dari data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.-
POLICY
: Representasi JSON dari kebijakan yang ingin Anda tetapkan. Untuk informasi selengkapnya tentang format kebijakan, lihat Referensi kebijakan.Misalnya, untuk menetapkan kebijakan izinkan yang ditunjukkan pada langkah sebelumnya, ganti
POLICY
dengan kode berikut, denganCALLER_SA
adalah akun layanan yang membuat token yang berlaku singkat:{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountTokenCreator", "members": [ "serviceAccount:CALLER_SA" ] } ] }
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA
Meminta isi JSON:
{ "policy": POLICY }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Respons berisi kebijakan izin yang telah diperbarui.
Kredensial pengguna
Jika Anda ingin menggunakan Google Cloud CLI untuk membuat token yang berlaku singkat, atau Anda ingin membuat token yang berlaku singkat dari lingkungan pengembangan lokal, Anda dapat menggunakan akun pengguna untuk membuat token tersebut. Sering kali, Anda dapat menggunakan Akun Google Anda sendiri
Saat Anda menggunakan akun pengguna untuk membuat token yang berlaku singkat, identitas berikut akan dilibatkan:
Akun Google Pemanggil (
CALLER_ACCOUNT
)Akun pengguna ini digunakan untuk membuat kredensial yang berlaku singkat untuk akun layanan yang memiliki hak istimewa.
Akun layanan yang memiliki hak istimewa (
PRIV_SA
)Akun layanan ini diberi peran IAM yang diperlukan untuk token yang berlaku singkat. Ini adalah akun layanan tempat token yang berlaku singkat dibuat.
Untuk memungkinkan CALLER_ACCOUNT
dapat membuat kredensial
yang berlaku singkat untuk PRIV_SA
, Anda memberikan
CALLER_ACCOUNT
peran Pembuat Token Akun Layanan
(roles/iam.serviceAccountTokenCreator
) pada PRIV_SA
.
Berikan peran yang diperlukan pada PRIV_SA
:
Konsol
-
Di konsol Google Cloud, buka halaman Akun Layanan.
- Pilih project.
-
Klik alamat email akun layanan yang memiliki hak istimewa,
PRIV_SA
. - Klik tab Izin.
- Pada Akun utama dengan akses ke akun layanan ini, klik Berikan Akses.
-
Masukkan alamat email Akun Google pemanggil,
CALLER_ACCOUNT
.Misalnya,
username@google.com
. -
Pilih peran Pembuat Token Akun Layanan
(
roles/iam.serviceAccountTokenCreator
). - Klik Simpan untuk memberikan peran kepada akun pengguna.
gcloud
Perintah
gcloud iam service-accounts add-iam-policy-binding
memberikan peran pada akun layanan.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token dibuat. -
CALLER_ACCOUNT
: Alamat email akun pengguna yang digunakan untuk meminta token yang berlaku singkat.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud iam service-accounts add-iam-policy-binding PRIV_SA \ --member=user:CALLER_ACCOUNT --role=roles/iam.serviceAccountTokenCreator --format=json
Windows (PowerShell)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ` --member=user:CALLER_ACCOUNT --role=roles/iam.serviceAccountTokenCreator --format=json
Windows (cmd.exe)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ^ --member=user:CALLER_ACCOUNT --role=roles/iam.serviceAccountTokenCreator --format=json
Anda akan melihat respons seperti berikut:
Updated IAM policy for serviceAccount [PRIV_SA]. { "bindings": [ { "members": [ "user:CALLER_ACCOUNT" ], "role": "roles/iam.serviceAccountTokenCreator" } ], "etag": "BwX1ZbefjXU=", "version": 1 }
REST
-
Baca kebijakan izin untuk
PRIV_SA
:Metode
serviceAccounts.getIamPolicy
mendapatkan kebijakan izin akun layanan.Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA:getIamPolicy
Meminta isi JSON:
{ "options": { "requestedPolicyVersion": POLICY_VERSION } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] } ] }
Jika Anda belum memberikan peran apa pun ke akun layanan, respons hanya akan berisi nilai
etag
. Sertakan nilaietag
tersebut di langkah berikutnya. -
Ubah kebijakan izin untuk memberi
CALLER_ACCOUNT
peran Pembuat Token Akun Layanan (roles/iam.serviceAccountTokenCreator
).Misalnya, untuk mengubah contoh respons dari langkah sebelumnya, tambahkan kode berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountTokenCreator", "members": [ "user:CALLER_ACCOUNT" ] } ] }
-
Tulis kebijakan izin yang telah diperbarui:
Metode
serviceAccounts.setIamPolicy
menetapkan kebijakan izin yang telah diperbarui untuk akun layanan.Sebelum menggunakan salah satu dari data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.-
POLICY
: Representasi JSON dari kebijakan yang ingin Anda tetapkan. Untuk informasi selengkapnya tentang format kebijakan, lihat Referensi kebijakan.Misalnya, untuk menetapkan kebijakan izinkan yang ditunjukkan pada langkah sebelumnya, ganti
POLICY
dengan kode berikut, denganCALLER_ACCOUNT
adalah akun pengguna yang membuat token yang berlaku singkat:{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountTokenCreator", "members": [ "user:CALLER_ACCOUNT" ] } ] }
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA
Meminta isi JSON:
{ "policy": POLICY }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Respons berisi kebijakan izin yang telah diperbarui.
Membuat token akses
Anda dapat membuat token akses OAuth 2.0 dengan menggunakan gcloud CLI, REST API, atau Library Klien Cloud dan Library Klien Google API.
Jika Anda menggunakan REST API, dan sistem Anda dikonfigurasi untuk mengizinkan masa pakai token yang lebih lama, Anda dapat membuat token dengan masa aktif yang lebih lama daripada default-nya. Google Cloud CLI tidak mendukung setelan masa aktif untuk token.
Contoh di bawah ini dirancang untuk digunakan di lingkungan pengembangan lokal; pemanggil harus diwakili oleh akun pengguna, bukan akun layanan.
Buat token akses OAuth 2.0 untuk akun layanan:
gcloud
Login ke Google Cloud CLI sebagai Akun Google pemanggil.
gcloud auth login CALLER_ACCOUNT
Buat token untuk akun layanan.
Perintah
gcloud auth print-access-token
menghasilkan token akses OAuth 2.0 untuk akun layanan.Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud auth print-access-token --impersonate-service-account=PRIV_SA
Windows (PowerShell)
gcloud auth print-access-token --impersonate-service-account=PRIV_SA
Windows (cmd.exe)
gcloud auth print-access-token --impersonate-service-account=PRIV_SA
Anda akan melihat respons seperti berikut:
WARNING: This command is using service account impersonation. All API calls will be executed as [my-sa@my-project.iam.gserviceaccount.com]. ya29.c.b0AXv0zTPnzTnDV8F8Aj5Fgy46Yf2v_v8eZIoKq7xGpfbpXuy23aQ1693m3gAuE8AZga7w6kdagN7a9bfdDYbdeoGY0CMHOClsCwIdutL7k_RFC672lOCbUgF5hS8Iu2nCA8hle-11LJXBLmaxFmH08ZTBJLuDrWSNd8cYqGYFunSC1K1qLIPBF18tsa0hxVgKPucI8b1A9L8_MK1JGLGcr0n7-zY77_lmbcdODG3NmIbLOGWOutjJgqSO_YoeCKK2QTUZIp5PG7RkKlXWnmYJA9pEahzNoQrs5sWZctc2bia9af_ITzqqlXC9h1Kj5-me6e8rd734MJvpagqYazRk0gGWpMb03XmMGpgPc_FBp4pnX9rGOzW83SNpcDz8zeFO1Q0Bo3N7CuZougjRce0y8I2_4rtw5ME_nV3wrCWa..................................................................................................................................................................................................................................................................................................
-
REST
Metode Service Account Credentials API
serviceAccounts.generateAccessToken
menghasilkan token akses OAuth 2.0 untuk akun layanan.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku dibuat. -
LIFETIME
: Jumlah waktu hingga token akses berakhir, dalam detik. Contoh,300s
.Secara default, masa aktif token maksimum adalah 1 jam (3.600 detik). Untuk memperpanjang masa aktif maksimum token ini menjadi 12 jam (43.200 detik), tambahkan akun layanan ke kebijakan organisasi yang menyertakan batasan daftar
constraints/iam.allowServiceAccountCredentialLifetimeExtension
.
Metode HTTP dan URL:
POST https://iamcredentials.googleapis.com/v1/projects/-/serviceAccounts/PRIV_SA:generateAccessToken
Meminta isi JSON:
{ "scope": [ "https://www.googleapis.com/auth/cloud-platform" ], "lifetime": "LIFETIME" }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Jika permintaan generateAccessToken
berhasil, isi respons
akan memuat token akses OAuth 2.0 dan waktu habis masa berlaku. accessToken
kemudian dapat
digunakan untuk mengautentikasi permintaan atas nama akun layanan hingga
expireTime
telah tercapai:
{ "accessToken": "eyJ0eXAi...NiJ9", "expireTime": "2020-04-07T15:01:23.045123456Z" }
Go
Sebelum Anda dapat menggunakan kode contoh ini, Anda harus menyiapkan Kredensial Default Aplikasi untuk Akun Google pemanggil yang sebelumnya Anda berikan peran yang diperlukan untuk meniru akun layanan yang memuat hak istimewa.
Java
Sebelum Anda dapat menggunakan kode contoh ini, Anda harus menyiapkan Kredensial Default Aplikasi untuk Akun Google pemanggil yang sebelumnya Anda berikan peran yang diperlukan untuk meniru akun layanan yang memuat hak istimewa.
Node.js
Sebelum Anda dapat menggunakan kode contoh ini, Anda harus menyiapkan Kredensial Default Aplikasi untuk Akun Google pemanggil yang sebelumnya Anda berikan peran yang diperlukan untuk meniru akun layanan yang memuat hak istimewa.
Python
Sebelum Anda dapat menggunakan kode contoh ini, Anda harus menyiapkan Kredensial Default Aplikasi untuk Akun Google pemanggil yang sebelumnya Anda berikan peran yang diperlukan untuk meniru akun layanan yang memuat hak istimewa.
Membuat token ID OpenID Connect (OIDC)
Token ID mengikuti spesifikasi OpenID Connect (OIDC). Token ID diterima oleh layanan dan aplikasi dalam jumlah yang terbatas.
Untuk mengetahui informasi selengkapnya, lihat Token ID dan Autentikasi untuk aplikasi yang dihosting di Cloud Run atau Cloud Functions.
Untuk membuat token ID, selesaikan tugas berikut:
Berikan izin yang diperlukan kepada pemanggil.
Gunakan peran Pembuat Token OpenID Connect Identity pada Akun Layanan (
roles/iam.serviceAccountOpenIdTokenCreator
) untuk membuat token ID. Ini adalah peran yang berbeda dengan peran yang Anda gunakan untuk jenis token lainnya.
Memberikan izin yang diperlukan
Permintaan langsung melibatkan dua identitas: pemanggil yang meminta kredensial, dan akun layanan tempat kredensial tersebut dibuat. Cara Anda menyiapkan izin bergantung pada apakah pemanggil melakukan autentikasi sebagai akun layanan atau sebagai Akun Google.
Jika Anda ingin menjalankan perintah REST atau gcloud CLI pada halaman ini dalam lingkungan pengembangan lokal, pemanggil dapat diwakili oleh kredensial pengguna. Untuk workload otomatis, seperti aplikasi yang berjalan di Compute Engine, pemanggil harus diwakili oleh akun layanan.
Akun layanan
Saat aplikasi panggilan menggunakan akun layanan sebagai identitasnya, entity utama berikut akan terlibat:
Akun layanan pemanggil (
CALLER_SA
)Akun layanan ini mewakili aplikasi panggilan, yang mengeluarkan permintaan untuk kredensial yang berlaku singkat.
-
Akun layanan yang memiliki hak istimewa (
PRIV_SA
)Akun layanan ini diberi peran IAM yang diperlukan untuk token yang berlaku singkat. Ini adalah akun layanan tempat token yang berlaku singkat dibuat.
Untuk memberi CALLER_SA
izin guna membuat kredensial
yang berlaku singkat untuk PRIV_SA
, Anda memberikan
CALLER_SA
peran Pembuat Token Identitas OpenID Connect
(roles/iam.serviceAccountOpenIdTokenCreator
) Akun Layanan pada PRIV_SA
.
Berikan peran yang diperlukan pada PRIV_SA
:
Konsol
-
Di konsol Google Cloud, buka halaman Akun Layanan.
- Pilih project.
-
Klik alamat email akun layanan yang memiliki hak istimewa,
PRIV_SA
. - Klik tab Izin.
- Pada Akun utama dengan akses ke akun layanan ini, klik Berikan Akses.
-
Masukkan alamat email akun layanan pemanggil,
CALLER_SA
.Misalnya,
demo@my-project.iam.gserviceaccount.com
. -
Pilih peran Pembuat Token OpenID Connect Identity pada Akun Layanan
(
roles/iam.serviceAccountOpenIdTokenCreator
). - Klik Simpan untuk memberikan peran ke akun layanan.
gcloud
Perintah
gcloud iam service-accounts add-iam-policy-binding
memberikan peran pada akun layanan.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token dibuat. -
CALLER_SA
: Alamat email akun layanan yang mewakili aplikasi yang meminta token yang berlaku singkat.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud iam service-accounts add-iam-policy-binding PRIV_SA \ --member=serviceAccount:CALLER_SA --role=roles/iam.serviceAccountOpenIdTokenCreator --format=json
Windows (PowerShell)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ` --member=serviceAccount:CALLER_SA --role=roles/iam.serviceAccountOpenIdTokenCreator --format=json
Windows (cmd.exe)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ^ --member=serviceAccount:CALLER_SA --role=roles/iam.serviceAccountOpenIdTokenCreator --format=json
Anda akan melihat respons seperti berikut:
Updated IAM policy for serviceAccount [PRIV_SA]. { "bindings": [ { "members": [ "serviceAccount:CALLER_SA" ], "role": "roles/iam.serviceAccountOpenIdTokenCreator" } ], "etag": "BwXhCB4eyjY=", "version": 1 }
REST
-
Baca kebijakan izin untuk
PRIV_SA
:Metode
serviceAccounts.getIamPolicy
mendapatkan kebijakan izin akun layanan.Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA:getIamPolicy
Meminta isi JSON:
{ "options": { "requestedPolicyVersion": POLICY_VERSION } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] } ] }
Jika Anda belum memberikan peran apa pun ke akun layanan, respons hanya akan berisi nilai
etag
. Sertakan nilaietag
tersebut di langkah berikutnya. -
Ubah kebijakan izin untuk memberi
CALLER_SA
peran Pembuat Token OpenID Connect Identity pada Akun Layanan (roles/iam.serviceAccountOpenIdTokenCreator
).Misalnya, untuk mengubah contoh respons dari langkah sebelumnya, tambahkan kode berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountOpenIdTokenCreator", "members": [ "serviceAccount:CALLER_SA" ] } ] }
-
Tulis kebijakan izin yang telah diperbarui:
Metode
serviceAccounts.setIamPolicy
menetapkan kebijakan izin yang telah diperbarui untuk akun layanan.Sebelum menggunakan salah satu dari data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.-
POLICY
: Representasi JSON dari kebijakan yang ingin Anda tetapkan. Untuk informasi selengkapnya tentang format kebijakan, lihat Referensi kebijakan.Misalnya, untuk menetapkan kebijakan izinkan yang ditunjukkan pada langkah sebelumnya, ganti
POLICY
dengan kode berikut, denganCALLER_SA
adalah akun layanan yang membuat token yang berlaku singkat:{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountOpenIdTokenCreator", "members": [ "serviceAccount:CALLER_SA" ] } ] }
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA
Meminta isi JSON:
{ "policy": POLICY }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Respons berisi kebijakan izin yang telah diperbarui.
Kredensial pengguna
Jika Anda ingin menggunakan Google Cloud CLI untuk membuat token yang berlaku singkat, atau Anda ingin membuat token yang berlaku singkat dari lingkungan pengembangan lokal, Anda dapat menggunakan akun pengguna untuk membuat token tersebut. Sering kali, Anda dapat menggunakan Akun Google Anda sendiri
Saat Anda menggunakan akun pengguna untuk membuat token yang berlaku singkat, identitas berikut akan dilibatkan:
Akun Google Pemanggil (
CALLER_ACCOUNT
)Akun pengguna ini digunakan untuk membuat kredensial yang berlaku singkat untuk akun layanan yang memiliki hak istimewa.
Akun layanan yang memiliki hak istimewa (
PRIV_SA
)Akun layanan ini diberi peran IAM yang diperlukan untuk token yang berlaku singkat. Ini adalah akun layanan tempat token yang berlaku singkat dibuat.
Agar CALLER_ACCOUNT
dapat membuat kredensial
yang berlaku singkat untuk PRIV_SA
, Anda memberikan
CALLER_ACCOUNT
peran Pembuat Token OpenID Connect Identity Akun Layanan
(roles/iam.serviceAccountOpenIdTokenCreator
) pada PRIV_SA
.
Berikan peran yang diperlukan pada PRIV_SA
:
Konsol
-
Di konsol Google Cloud, buka halaman Akun Layanan.
- Pilih project.
-
Klik alamat email akun layanan yang memiliki hak istimewa,
PRIV_SA
. - Klik tab Izin.
- Pada Akun utama dengan akses ke akun layanan ini, klik Berikan Akses.
-
Masukkan alamat email Akun Google pemanggil,
CALLER_ACCOUNT
.Misalnya,
username@google.com
. -
Pilih peran Pembuat Token OpenID Connect Identity pada Akun Layanan
(
roles/iam.serviceAccountOpenIdTokenCreator
). - Klik Simpan untuk memberikan peran kepada akun pengguna.
gcloud
Perintah
gcloud iam service-accounts add-iam-policy-binding
memberikan peran pada akun layanan.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token dibuat. -
CALLER_ACCOUNT
: Alamat email akun pengguna yang digunakan untuk meminta token yang berlaku singkat.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud iam service-accounts add-iam-policy-binding PRIV_SA \ --member=user:CALLER_ACCOUNT --role=roles/iam.serviceAccountOpenIdTokenCreator --format=json
Windows (PowerShell)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ` --member=user:CALLER_ACCOUNT --role=roles/iam.serviceAccountOpenIdTokenCreator --format=json
Windows (cmd.exe)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ^ --member=user:CALLER_ACCOUNT --role=roles/iam.serviceAccountOpenIdTokenCreator --format=json
Anda akan melihat respons seperti berikut:
Updated IAM policy for serviceAccount [PRIV_SA]. { "bindings": [ { "members": [ "user:CALLER_ACCOUNT" ], "role": "roles/iam.serviceAccountOpenIdTokenCreator" } ], "etag": "BwX1ZbefjXU=", "version": 1 }
REST
-
Baca kebijakan izin untuk
PRIV_SA
:Metode
serviceAccounts.getIamPolicy
mendapatkan kebijakan izin akun layanan.Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA:getIamPolicy
Meminta isi JSON:
{ "options": { "requestedPolicyVersion": POLICY_VERSION } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] } ] }
Jika Anda belum memberikan peran apa pun ke akun layanan, respons hanya akan berisi nilai
etag
. Sertakan nilaietag
tersebut di langkah berikutnya. -
Ubah kebijakan izin untuk memberi
CALLER_ACCOUNT
peran Pembuat Token OpenID Connect Identity pada Akun Layanan (roles/iam.serviceAccountOpenIdTokenCreator
).Misalnya, untuk mengubah contoh respons dari langkah sebelumnya, tambahkan kode berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountOpenIdTokenCreator", "members": [ "user:CALLER_ACCOUNT" ] } ] }
-
Tulis kebijakan izin yang telah diperbarui:
Metode
serviceAccounts.setIamPolicy
menetapkan kebijakan izin yang telah diperbarui untuk akun layanan.Sebelum menggunakan salah satu dari data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.-
POLICY
: Representasi JSON dari kebijakan yang ingin Anda tetapkan. Untuk informasi selengkapnya tentang format kebijakan, lihat Referensi kebijakan.Misalnya, untuk menetapkan kebijakan izinkan yang ditunjukkan pada langkah sebelumnya, ganti
POLICY
dengan kode berikut, denganCALLER_ACCOUNT
adalah akun pengguna yang membuat token yang berlaku singkat:{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountOpenIdTokenCreator", "members": [ "user:CALLER_ACCOUNT" ] } ] }
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA
Meminta isi JSON:
{ "policy": POLICY }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Respons berisi kebijakan izin yang telah diperbarui.
Membuat token ID
Anda dapat membuat token ID OpenID Connect (OIDC) dengan menggunakan gcloud CLI, REST API, atau Library Klien Cloud dan Library Klien Google API.
Contoh di bawah ini dirancang untuk digunakan di lingkungan pengembangan lokal; pemanggil harus diwakili oleh akun pengguna, bukan akun layanan.
Token ID OIDC berlaku selama 1 jam (3.600 detik).
Buat token ID OIDC yang ditandatangani Google untuk akun layanan:
gcloud
Login ke Google Cloud CLI sebagai Akun Google pemanggil.
gcloud auth login CALLER_ACCOUNT
Buat token untuk akun layanan.
Perintah
gcloud auth print-identity-token
menghasilkan token ID OIDC untuk akun layanan.Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. -
AUDIENCE_NAME
: Audiens untuk token, biasanya URL aplikasi atau layanan tempat token akan digunakan untuk mengakses.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud auth print-identity-token --impersonate-service-account=PRIV_SA --audiences="AUDIENCE_NAME"
Windows (PowerShell)
gcloud auth print-identity-token --impersonate-service-account=PRIV_SA --audiences="AUDIENCE_NAME"
Windows (cmd.exe)
gcloud auth print-identity-token --impersonate-service-account=PRIV_SA --audiences="AUDIENCE_NAME"
Anda akan melihat respons seperti berikut:
WARNING: This command is using service account impersonation. All API calls will be executed as [my-sa@my-project.iam.gserviceaccount.com]. eyJhbGciOiJSUzI1NiIsImtpZDNhMDg4ZDRmZmMjJkYTVmZTM5MDZjY2MiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJ3d3cuZXhhbXBsJhenAiOiIxMTYzwNDYyMDk0ODIiLCJleHAiOjE2NTQ4ODU0MzEsImlhdCI6MTY1NDg4MTgzMSwiaXN6Ly9hY2NvdW50cy5nb29nbGUuY29tIiwic3ViIMDQ2MjA5NDgyIn0.F7mu8IHj5VQdu7ItFrnYAKyGd7YqXuOP_rFLc98q8BaFBycAF1zAQnSnwqnSUXba0UK9PDT_-IOry68qLwBObz4XlX9lk0ehpN0O0W9FcFToKLB6wefXXPd4h7xtuPe5KzmpSOqj2Qqv34HriGw00Nqd-oGSgNY_lZ4wGEf4rT4oQa_kEcrY57Q2G6pwd769BhgeFwoLi5aK_Cv2kvf_zfMszC-xlkP9zwWQ8XinJBwe-qcQBa4NTgrbueNtXsEjccBS366zmw
-
REST
Metode Service Account Credentials API
serviceAccounts.generateIdToken
menghasilkan token ID OIDC untuk akun layanan.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. -
AUDIENCE_NAME
: Audiens untuk token, biasanya URL aplikasi atau layanan tempat token akan digunakan untuk mengakses.
Metode HTTP dan URL:
POST https://iamcredentials.googleapis.com/v1/projects/-/serviceAccounts/PRIV_SA:generateIdToken
Meminta isi JSON:
{ "audience": "AUDIENCE_NAME", "includeEmail": "true" }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Jika permintaan generateId
berhasil, isi permintaan
akan memuat token ID yang berlaku selama 1 jam. token
kemudian dapat digunakan untuk
mengautentikasi permintaan atas nama akun layanan:
{ "token": "eyJ0eXAi...NiJ9" }
Membuat Token Web JSON (JWT) yang ditandatangani sendiri
Token Web JSON (JWT) yang ditandatangani sendiri berguna dalam berbagai skenario:
- Mengautentikasi ke API yang di-deploy dengan API Gateway.
- Mengautentikasi panggilan ke Google API seperti yang dijelaskan dalam Panduan Autentikasi Google.
- Berkomunikasi antar-aplikasi Anda dengan aman. Dalam skenario ini, satu aplikasi dapat menandatangani token yang dapat diverifikasi oleh aplikasi lain untuk tujuan autentikasi.
- Memperlakukan akun layanan sebagai penyedia identitas dengan menandatangani JWT yang berisi klaim arbitrer tentang pengguna, akun, atau perangkat.
Untuk membuat JWT, selesaikan tugas berikut:
Memberikan izin yang diperlukan
Permintaan langsung melibatkan dua identitas: pemanggil yang meminta kredensial, dan akun layanan tempat kredensial tersebut dibuat. Cara Anda menyiapkan izin bergantung pada apakah pemanggil melakukan autentikasi sebagai akun layanan atau sebagai Akun Google.
Jika Anda ingin menjalankan perintah REST atau gcloud CLI pada halaman ini dalam lingkungan pengembangan lokal, pemanggil dapat diwakili oleh kredensial pengguna. Untuk workload otomatis, seperti aplikasi yang berjalan di Compute Engine, pemanggil harus diwakili oleh akun layanan.
Akun layanan
Saat aplikasi panggilan menggunakan akun layanan sebagai identitasnya, entity utama berikut akan terlibat:
Akun layanan pemanggil (
CALLER_SA
)Akun layanan ini mewakili aplikasi panggilan, yang mengeluarkan permintaan untuk kredensial yang berlaku singkat.
-
Akun layanan yang memiliki hak istimewa (
PRIV_SA
)Akun layanan ini diberi peran IAM yang diperlukan untuk token yang berlaku singkat. Ini adalah akun layanan tempat token yang berlaku singkat dibuat.
Untuk memberi CALLER_SA
izin untuk membuat kredensial
yang berlaku singkat untuk PRIV_SA
, Anda memberikan
CALLER_SA
peran Pembuat Token Akun Layanan
(roles/iam.serviceAccountTokenCreator
) pada PRIV_SA
.
Berikan peran yang diperlukan pada PRIV_SA
:
Konsol
-
Di konsol Google Cloud, buka halaman Akun Layanan.
- Pilih project.
-
Klik alamat email akun layanan yang memiliki hak istimewa,
PRIV_SA
. - Klik tab Izin.
- Pada Akun utama dengan akses ke akun layanan ini, klik Berikan Akses.
-
Masukkan alamat email akun layanan pemanggil,
CALLER_SA
.Misalnya,
demo@my-project.iam.gserviceaccount.com
. -
Pilih peran Pembuat Token Akun Layanan
(
roles/iam.serviceAccountTokenCreator
). - Klik Simpan untuk memberikan peran ke akun layanan.
gcloud
Perintah
gcloud iam service-accounts add-iam-policy-binding
memberikan peran pada akun layanan.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token dibuat. -
CALLER_SA
: Alamat email akun layanan yang mewakili aplikasi yang meminta token yang berlaku singkat.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud iam service-accounts add-iam-policy-binding PRIV_SA \ --member=serviceAccount:CALLER_SA --role=roles/iam.serviceAccountTokenCreator --format=json
Windows (PowerShell)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ` --member=serviceAccount:CALLER_SA --role=roles/iam.serviceAccountTokenCreator --format=json
Windows (cmd.exe)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ^ --member=serviceAccount:CALLER_SA --role=roles/iam.serviceAccountTokenCreator --format=json
Anda akan melihat respons seperti berikut:
Updated IAM policy for serviceAccount [PRIV_SA]. { "bindings": [ { "members": [ "serviceAccount:CALLER_SA" ], "role": "roles/iam.serviceAccountTokenCreator" } ], "etag": "BwXhCB4eyjY=", "version": 1 }
REST
-
Baca kebijakan izin untuk
PRIV_SA
:Metode
serviceAccounts.getIamPolicy
mendapatkan kebijakan izin akun layanan.Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA:getIamPolicy
Meminta isi JSON:
{ "options": { "requestedPolicyVersion": POLICY_VERSION } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] } ] }
Jika Anda belum memberikan peran apa pun ke akun layanan, respons hanya akan berisi nilai
etag
. Sertakan nilaietag
tersebut di langkah berikutnya. -
Ubah kebijakan izinkan untuk memberi
CALLER_SA
peran Pembuat Token Akun Layanan (roles/iam.serviceAccountTokenCreator
).Misalnya, untuk mengubah contoh respons dari langkah sebelumnya, tambahkan kode berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountTokenCreator", "members": [ "serviceAccount:CALLER_SA" ] } ] }
-
Tulis kebijakan izin yang telah diperbarui:
Metode
serviceAccounts.setIamPolicy
menetapkan kebijakan izin yang telah diperbarui untuk akun layanan.Sebelum menggunakan salah satu dari data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.-
POLICY
: Representasi JSON dari kebijakan yang ingin Anda tetapkan. Untuk informasi selengkapnya tentang format kebijakan, lihat Referensi kebijakan.Misalnya, untuk menetapkan kebijakan izinkan yang ditunjukkan pada langkah sebelumnya, ganti
POLICY
dengan kode berikut, denganCALLER_SA
adalah akun layanan yang membuat token yang berlaku singkat:{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountTokenCreator", "members": [ "serviceAccount:CALLER_SA" ] } ] }
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA
Meminta isi JSON:
{ "policy": POLICY }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Respons berisi kebijakan izin yang telah diperbarui.
Kredensial pengguna
Jika Anda ingin menggunakan Google Cloud CLI untuk membuat token yang berlaku singkat, atau Anda ingin membuat token yang berlaku singkat dari lingkungan pengembangan lokal, Anda dapat menggunakan akun pengguna untuk membuat token tersebut. Sering kali, Anda dapat menggunakan Akun Google Anda sendiri
Saat Anda menggunakan akun pengguna untuk membuat token yang berlaku singkat, identitas berikut akan dilibatkan:
Akun Google Pemanggil (
CALLER_ACCOUNT
)Akun pengguna ini digunakan untuk membuat kredensial yang berlaku singkat untuk akun layanan yang memiliki hak istimewa.
Akun layanan yang memiliki hak istimewa (
PRIV_SA
)Akun layanan ini diberi peran IAM yang diperlukan untuk token yang berlaku singkat. Ini adalah akun layanan tempat token yang berlaku singkat dibuat.
Untuk memungkinkan CALLER_ACCOUNT
dapat membuat kredensial
yang berlaku singkat untuk PRIV_SA
, Anda memberikan
CALLER_ACCOUNT
peran Pembuat Token Akun Layanan
(roles/iam.serviceAccountTokenCreator
) pada PRIV_SA
.
Berikan peran yang diperlukan pada PRIV_SA
:
Konsol
-
Di konsol Google Cloud, buka halaman Akun Layanan.
- Pilih project.
-
Klik alamat email akun layanan yang memiliki hak istimewa,
PRIV_SA
. - Klik tab Izin.
- Pada Akun utama dengan akses ke akun layanan ini, klik Berikan Akses.
-
Masukkan alamat email Akun Google pemanggil,
CALLER_ACCOUNT
.Misalnya,
username@google.com
. -
Pilih peran Pembuat Token Akun Layanan
(
roles/iam.serviceAccountTokenCreator
). - Klik Simpan untuk memberikan peran kepada akun pengguna.
gcloud
Perintah
gcloud iam service-accounts add-iam-policy-binding
memberikan peran pada akun layanan.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token dibuat. -
CALLER_ACCOUNT
: Alamat email akun pengguna yang digunakan untuk meminta token yang berlaku singkat.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud iam service-accounts add-iam-policy-binding PRIV_SA \ --member=user:CALLER_ACCOUNT --role=roles/iam.serviceAccountTokenCreator --format=json
Windows (PowerShell)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ` --member=user:CALLER_ACCOUNT --role=roles/iam.serviceAccountTokenCreator --format=json
Windows (cmd.exe)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ^ --member=user:CALLER_ACCOUNT --role=roles/iam.serviceAccountTokenCreator --format=json
Anda akan melihat respons seperti berikut:
Updated IAM policy for serviceAccount [PRIV_SA]. { "bindings": [ { "members": [ "user:CALLER_ACCOUNT" ], "role": "roles/iam.serviceAccountTokenCreator" } ], "etag": "BwX1ZbefjXU=", "version": 1 }
REST
-
Baca kebijakan izin untuk
PRIV_SA
:Metode
serviceAccounts.getIamPolicy
mendapatkan kebijakan izin akun layanan.Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA:getIamPolicy
Meminta isi JSON:
{ "options": { "requestedPolicyVersion": POLICY_VERSION } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] } ] }
Jika Anda belum memberikan peran apa pun ke akun layanan, respons hanya akan berisi nilai
etag
. Sertakan nilaietag
tersebut di langkah berikutnya. -
Ubah kebijakan izin untuk memberi
CALLER_ACCOUNT
peran Pembuat Token Akun Layanan (roles/iam.serviceAccountTokenCreator
).Misalnya, untuk mengubah contoh respons dari langkah sebelumnya, tambahkan kode berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountTokenCreator", "members": [ "user:CALLER_ACCOUNT" ] } ] }
-
Tulis kebijakan izin yang telah diperbarui:
Metode
serviceAccounts.setIamPolicy
menetapkan kebijakan izin yang telah diperbarui untuk akun layanan.Sebelum menggunakan salah satu dari data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.-
POLICY
: Representasi JSON dari kebijakan yang ingin Anda tetapkan. Untuk informasi selengkapnya tentang format kebijakan, lihat Referensi kebijakan.Misalnya, untuk menetapkan kebijakan izinkan yang ditunjukkan pada langkah sebelumnya, ganti
POLICY
dengan kode berikut, denganCALLER_ACCOUNT
adalah akun pengguna yang membuat token yang berlaku singkat:{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountTokenCreator", "members": [ "user:CALLER_ACCOUNT" ] } ] }
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA
Meminta isi JSON:
{ "policy": POLICY }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Respons berisi kebijakan izin yang telah diperbarui.
Membuat JWT
Buat JWT yang ditandatangani sendiri:
REST
Metode Service Account Credentials API
serviceAccounts.signJwt
menandatangani JWT menggunakan kunci pribadi yang dikelola sistem pada akun layanan.
Sebelum menggunakan salah satu dari data permintaan, lakukan penggantian berikut:
-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. -
JWT_PAYLOAD
: Payload JWT yang akan ditandatangani, yaitu objek JSON yang berisi Kumpulan Klaim JWT. Sertakan klaim yang diperlukan untuk kasus penggunaan yang Anda inginkan dan untuk memenuhi persyaratan validasi untuk layanan yang Anda panggil. Jika Anda memanggil Google API, lihat Panduan Autentikasi Google untuk mengetahui persyaratan klaimnya.Klaim
exp
(waktu habis masa berlaku) tidak boleh lebih dari 12 jam ke depan. Jika Anda memanggil Google API, klaimexp
harus ditetapkan tidak boleh lebih dari 1 jam ke depan.Contoh payload berikut berisi klaim untuk memanggil Google API, dengan
EXP
adalah stempel waktu bilangan bulat yang menunjukkan waktu habis masa berlaku:{ \"iss\": \"PRIV_SA\", \"sub\": \"PRIV_SA\", \"aud\": \"https://firestore.googleapis.com/\", \"iat\": 1529350000, \"exp\": EXP }
Metode HTTP dan URL:
POST https://iamcredentials.googleapis.com/v1/projects/-/serviceAccounts/PRIV_SA:signJwt
Meminta isi JSON:
{ "payload": "JWT_PAYLOAD" }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Jika permintaan signJwt
berhasil, isi respons berisi JWT yang ditandatangani dan
ID kunci penandatanganan yang digunakan untuk menandatangani JWT. Anda dapat menggunakan nilai signedJwt
sebagai
token pemilik untuk secara langsung mengautentikasi permintaan atas nama akun layanan. Token
berlaku hingga waktu habis masa berlaku yang ditetapkan dalam permintaan:
{ "keyId": "42ba1e...fc0a", "signedJwt": "eyJ0eXAi...NiJ9" }
Membuat objek biner yang ditandatangani sendiri (blob)
Objek biner yang ditandatangani sendiri, atau blob, digunakan untuk mengirimkan data biner sedemikian rupa sehingga pembuat data dapat diketahui (karena blob ditandatangani sendiri). Blob dapat digunakan untuk membuat tanda tangan, sebuah objek Cloud Storage yang diperlukan untuk berbagai alur autentikasi termasuk URL yang ditandatangani. Untuk mengetahui informasi tentang tanda tangan, lihat dokumentasi Cloud Storage.
Untuk membuat objek biner yang ditandatangani sendiri, selesaikan tugas berikut:
Memberikan izin yang diperlukan
Permintaan langsung melibatkan dua identitas: pemanggil yang meminta kredensial, dan akun layanan tempat kredensial tersebut dibuat. Cara Anda menyiapkan izin bergantung pada apakah pemanggil melakukan autentikasi sebagai akun layanan atau sebagai Akun Google.
Jika Anda ingin menjalankan perintah REST atau gcloud CLI pada halaman ini dalam lingkungan pengembangan lokal, pemanggil dapat diwakili oleh kredensial pengguna. Untuk workload otomatis, seperti aplikasi yang berjalan di Compute Engine, pemanggil harus diwakili oleh akun layanan.
Akun layanan
Saat aplikasi panggilan menggunakan akun layanan sebagai identitasnya, entity utama berikut akan terlibat:
Akun layanan pemanggil (
CALLER_SA
)Akun layanan ini mewakili aplikasi panggilan, yang mengeluarkan permintaan untuk kredensial yang berlaku singkat.
-
Akun layanan yang memiliki hak istimewa (
PRIV_SA
)Akun layanan ini diberi peran IAM yang diperlukan untuk token yang berlaku singkat. Ini adalah akun layanan tempat token yang berlaku singkat dibuat.
Untuk memberi CALLER_SA
izin untuk membuat kredensial
yang berlaku singkat untuk PRIV_SA
, Anda memberikan
CALLER_SA
peran Pembuat Token Akun Layanan
(roles/iam.serviceAccountTokenCreator
) pada PRIV_SA
.
Berikan peran yang diperlukan pada PRIV_SA
:
Konsol
-
Di konsol Google Cloud, buka halaman Akun Layanan.
- Pilih project.
-
Klik alamat email akun layanan yang memiliki hak istimewa,
PRIV_SA
. - Klik tab Izin.
- Pada Akun utama dengan akses ke akun layanan ini, klik Berikan Akses.
-
Masukkan alamat email akun layanan pemanggil,
CALLER_SA
.Misalnya,
demo@my-project.iam.gserviceaccount.com
. -
Pilih peran Pembuat Token Akun Layanan
(
roles/iam.serviceAccountTokenCreator
). - Klik Simpan untuk memberikan peran ke akun layanan.
gcloud
Perintah
gcloud iam service-accounts add-iam-policy-binding
memberikan peran pada akun layanan.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token dibuat. -
CALLER_SA
: Alamat email akun layanan yang mewakili aplikasi yang meminta token yang berlaku singkat.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud iam service-accounts add-iam-policy-binding PRIV_SA \ --member=serviceAccount:CALLER_SA --role=roles/iam.serviceAccountTokenCreator --format=json
Windows (PowerShell)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ` --member=serviceAccount:CALLER_SA --role=roles/iam.serviceAccountTokenCreator --format=json
Windows (cmd.exe)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ^ --member=serviceAccount:CALLER_SA --role=roles/iam.serviceAccountTokenCreator --format=json
Anda akan melihat respons seperti berikut:
Updated IAM policy for serviceAccount [PRIV_SA]. { "bindings": [ { "members": [ "serviceAccount:CALLER_SA" ], "role": "roles/iam.serviceAccountTokenCreator" } ], "etag": "BwXhCB4eyjY=", "version": 1 }
REST
-
Baca kebijakan izin untuk
PRIV_SA
:Metode
serviceAccounts.getIamPolicy
mendapatkan kebijakan izin akun layanan.Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA:getIamPolicy
Meminta isi JSON:
{ "options": { "requestedPolicyVersion": POLICY_VERSION } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] } ] }
Jika Anda belum memberikan peran apa pun ke akun layanan, respons hanya akan berisi nilai
etag
. Sertakan nilaietag
tersebut di langkah berikutnya. -
Ubah kebijakan izinkan untuk memberi
CALLER_SA
peran Pembuat Token Akun Layanan (roles/iam.serviceAccountTokenCreator
).Misalnya, untuk mengubah contoh respons dari langkah sebelumnya, tambahkan kode berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountTokenCreator", "members": [ "serviceAccount:CALLER_SA" ] } ] }
-
Tulis kebijakan izin yang telah diperbarui:
Metode
serviceAccounts.setIamPolicy
menetapkan kebijakan izin yang telah diperbarui untuk akun layanan.Sebelum menggunakan salah satu dari data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.-
POLICY
: Representasi JSON dari kebijakan yang ingin Anda tetapkan. Untuk informasi selengkapnya tentang format kebijakan, lihat Referensi kebijakan.Misalnya, untuk menetapkan kebijakan izinkan yang ditunjukkan pada langkah sebelumnya, ganti
POLICY
dengan kode berikut, denganCALLER_SA
adalah akun layanan yang membuat token yang berlaku singkat:{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountTokenCreator", "members": [ "serviceAccount:CALLER_SA" ] } ] }
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA
Meminta isi JSON:
{ "policy": POLICY }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Respons berisi kebijakan izin yang telah diperbarui.
Kredensial pengguna
Jika Anda ingin menggunakan Google Cloud CLI untuk membuat token yang berlaku singkat, atau Anda ingin membuat token yang berlaku singkat dari lingkungan pengembangan lokal, Anda dapat menggunakan akun pengguna untuk membuat token tersebut. Sering kali, Anda dapat menggunakan Akun Google Anda sendiri
Saat Anda menggunakan akun pengguna untuk membuat token yang berlaku singkat, identitas berikut akan dilibatkan:
Akun Google Pemanggil (
CALLER_ACCOUNT
)Akun pengguna ini digunakan untuk membuat kredensial yang berlaku singkat untuk akun layanan yang memiliki hak istimewa.
Akun layanan yang memiliki hak istimewa (
PRIV_SA
)Akun layanan ini diberi peran IAM yang diperlukan untuk token yang berlaku singkat. Ini adalah akun layanan tempat token yang berlaku singkat dibuat.
Untuk memungkinkan CALLER_ACCOUNT
dapat membuat kredensial
yang berlaku singkat untuk PRIV_SA
, Anda memberikan
CALLER_ACCOUNT
peran Pembuat Token Akun Layanan
(roles/iam.serviceAccountTokenCreator
) pada PRIV_SA
.
Berikan peran yang diperlukan pada PRIV_SA
:
Konsol
-
Di konsol Google Cloud, buka halaman Akun Layanan.
- Pilih project.
-
Klik alamat email akun layanan yang memiliki hak istimewa,
PRIV_SA
. - Klik tab Izin.
- Pada Akun utama dengan akses ke akun layanan ini, klik Berikan Akses.
-
Masukkan alamat email Akun Google pemanggil,
CALLER_ACCOUNT
.Misalnya,
username@google.com
. -
Pilih peran Pembuat Token Akun Layanan
(
roles/iam.serviceAccountTokenCreator
). - Klik Simpan untuk memberikan peran kepada akun pengguna.
gcloud
Perintah
gcloud iam service-accounts add-iam-policy-binding
memberikan peran pada akun layanan.
Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:
-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token dibuat. -
CALLER_ACCOUNT
: Alamat email akun pengguna yang digunakan untuk meminta token yang berlaku singkat.
Jalankan perintah berikut:
Linux, macOS, atau Cloud Shell
gcloud iam service-accounts add-iam-policy-binding PRIV_SA \ --member=user:CALLER_ACCOUNT --role=roles/iam.serviceAccountTokenCreator --format=json
Windows (PowerShell)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ` --member=user:CALLER_ACCOUNT --role=roles/iam.serviceAccountTokenCreator --format=json
Windows (cmd.exe)
gcloud iam service-accounts add-iam-policy-binding PRIV_SA ^ --member=user:CALLER_ACCOUNT --role=roles/iam.serviceAccountTokenCreator --format=json
Anda akan melihat respons seperti berikut:
Updated IAM policy for serviceAccount [PRIV_SA]. { "bindings": [ { "members": [ "user:CALLER_ACCOUNT" ], "role": "roles/iam.serviceAccountTokenCreator" } ], "etag": "BwX1ZbefjXU=", "version": 1 }
REST
-
Baca kebijakan izin untuk
PRIV_SA
:Metode
serviceAccounts.getIamPolicy
mendapatkan kebijakan izin akun layanan.Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA:getIamPolicy
Meminta isi JSON:
{ "options": { "requestedPolicyVersion": POLICY_VERSION } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan menerima respons JSON seperti berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] } ] }
Jika Anda belum memberikan peran apa pun ke akun layanan, respons hanya akan berisi nilai
etag
. Sertakan nilaietag
tersebut di langkah berikutnya. -
Ubah kebijakan izin untuk memberi
CALLER_ACCOUNT
peran Pembuat Token Akun Layanan (roles/iam.serviceAccountTokenCreator
).Misalnya, untuk mengubah contoh respons dari langkah sebelumnya, tambahkan kode berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountTokenCreator", "members": [ "user:CALLER_ACCOUNT" ] } ] }
-
Tulis kebijakan izin yang telah diperbarui:
Metode
serviceAccounts.setIamPolicy
menetapkan kebijakan izin yang telah diperbarui untuk akun layanan.Sebelum menggunakan salah satu dari data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda ID project adalah string alfanumerik, sepertimy-project
.-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. POLICY_VERSION
: Versi kebijakan yang akan ditampilkan. Permintaan harus menentukan versi kebijakan terbaru, yaitu kebijakan versi 3. Lihat Menentukan versi kebijakan saat mendapatkan kebijakan untuk detailnya.-
POLICY
: Representasi JSON dari kebijakan yang ingin Anda tetapkan. Untuk informasi selengkapnya tentang format kebijakan, lihat Referensi kebijakan.Misalnya, untuk menetapkan kebijakan izinkan yang ditunjukkan pada langkah sebelumnya, ganti
POLICY
dengan kode berikut, denganCALLER_ACCOUNT
adalah akun pengguna yang membuat token yang berlaku singkat:{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/serviceAccountAdmin", "members": [ "user:admin@example.com" ] }, { "role": "roles/iam.serviceAccountTokenCreator", "members": [ "user:CALLER_ACCOUNT" ] } ] }
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/PRIV_SA
Meminta isi JSON:
{ "policy": POLICY }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Respons berisi kebijakan izin yang telah diperbarui.
Membuat blob yang ditandatangani sendiri
Buat blob yang ditandatangani sendiri untuk akun layanan:
REST
Metode Service Account Credentials API
serviceAccounts.signBlob
menandatangani blob menggunakan kunci pribadi yang dikelola sistem pada akun layanan.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
-
PRIV_SA
: Alamat email akun layanan yang memiliki hak istimewa tempat token yang berlaku singkat dibuat. -
BLOB_PAYLOAD
: String byte berenkode base64. Misalnya,VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wZWQgb3ZlciB0aGUgbGF6eSBkb2cu
.
Metode HTTP dan URL:
POST https://iamcredentials.googleapis.com/v1/projects/-/serviceAccounts/PRIV_SA:signBlob
Meminta isi JSON:
{ "payload": "BLOB_PAYLOAD" }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Jika permintaan signBlob
berhasil, isi respons akan memuat blob yang ditandatangani dan
ID kunci penandatanganan yang digunakan untuk menandatangani blob. Anda dapat menggunakan nilai signedBlob
sebagai token pemilik untuk secara langsung mengautentikasi permintaan atas nama akun layanan. Token
berlaku hingga masa berlaku kunci pribadi yang dikelola sistem pada akun layanan berakhir. ID kunci ini adalah
nilai kolom keyId
dalam respons.
{ "keyId": "42ba1e...fc0a", "signedBlob": "eyJ0eXAi...NiJ9" }