Halaman ini menunjukkan cara menggunakan metode signBlob
Google Cloud
untuk membuat tanda tangan dari dokumen kebijakan atau string-to-sign. Tanda tangan
digunakan sebagai kredensial dalam permintaan tertentu, seperti URL yang ditandatangani. Panduan
ini menggunakan kunci RSA untuk membuat tanda tangan.
Sebelum memulai
Enable the Service Account Credentials API.
Anda harus memiliki izin
iam.serviceAccounts.signBlob
untuk akun layanan yang Anda gunakan dalam panduan ini. Iziniam.serviceAccounts.signBlob
disertakan dalam peranroles/iam.serviceAccountTokenCreator
.Akun layanan yang Anda gunakan dalam panduan ini harus memiliki izin untuk melakukan permintaan yang dienkode dalam tanda tangan. Misalnya, jika tanda tangan akan digunakan untuk membaca data objek dari bucket, akun layanan harus memiliki izin untuk membaca data objek.
Membuat tanda tangan
Menginstal dan melakukan inisialisasi gcloud CLI , yang memungkinkan Anda membuat token akses untuk header
Authorization
.Buat file JSON yang berisi informasi berikut:
{ "payload": "REQUEST_INFORMATION" }
Dengan keterangan:
REQUEST_INFORMATION
adalah string-to-sign atau dokumen kebijakan. Untuk keduanya, konten harus berenkode base64.
Gunakan
cURL
untuk memanggil IAM API dengan permintaansignBlob
:curl -X POST --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://iamcredentials.googleapis.com/v1/projects/-/serviceAccounts/SERVICE_ACCOUNT_EMAIL:signBlob"
Dengan keterangan:
JSON_FILE_NAME
adalah nama file yang Anda buat di Langkah 2.SERVICE_ACCOUNT_EMAIL
adalah alamat email akun layanan yang ingin Anda gunakan untuk membuat tanda tangan. Contoh,service-7550275089395@my-pet-project.iam.gserviceaccount.com
.
Jika berhasil, tanda tangan akan ditampilkan di kolom signedBlob
dalam
respons.
Langkah berikutnya
- Lihat halaman referensi untuk menandatangani blob dengan Google Cloud CLI.
- Membuat URL yang ditandatangani secara manual menggunakan tanda tangan yang Anda buat.
- Membuat URL yang ditandatangani dengan alat Google Cloud.
- Pelajari tanda tangan lebih lanjut.