Topik ini menjelaskan metode tanda tangan yang dapat digunakan untuk memanggil API Content Moderation.
Catatan Kami menyarankan Anda untuk langsung menggunakan SDK Content Moderation. Proses tanda tangan telah dienkapsulasi dalam SDK, sehingga Anda tidak perlu menulis kode untuk tanda tangan. Untuk informasi lebih lanjut tentang SDK, lihat Content Moderation SDK for Java, Content Moderation SDK for Python, Content Moderation SDK for PHP, Content Moderation SDK for Go, dan Content Moderation SDK for .NET.
Prosedur dengan algoritma HMAC-SHA1 (default)
- Serialisasi Header Permintaan.Gabungkan semua header permintaan yang dimulai dengan
x-acs-berdasarkan aturan berikut:- Ekstrak semua header HTTP yang dimulai dengan
x-acs-. - Urutkan header HTTP yang diekstraksi secara alfabetis.
- Tulis setiap header HTTP dalam format
"Nama Header HTTP" + ":" + "Nilai Header HTTP" + "\n".
- Ekstrak semua header HTTP yang dimulai dengan
- Serialisasi URI dan Parameter Kueri.Gabungkan URI dan parameter
clientInfodalam formaturi + "?clientInfo=" + "String JSON dari ClientInfo".Catatan Pada langkah ini, pengkodean URL tidak diperlukan. - Buat String-to-Sign.Gunakan sintaksis berikut:
"POST\napplication/json\n" + "Nilai header Content-MD5" + "\n" + "application/json" + "\n" + "Nilai header Date" + "\n" + "Header permintaan yang diserialisasi" + "\n" "URI dan parameter kueri yang diserialisasi"Contoh berikut menunjukkan string-to-sign lengkap yang dapat digunakan untuk memanggil operasi sinkron untuk moderasi gambar:POST application/json C+5Y0crpO4sYgC2DNjycug== application/json Tue, 14 Mar 2017 06:29:50 GMT x-acs-signature-method:HMAC-SHA1 x-acs-signature-nonce:339497c2-d91f-4c17-a0a3-1192ee9e2202 x-acs-signature-version:1.0 x-acs-version:2018-05-09 /green/image/scan?clientInfo={"ip":"127.xxx.xxx.2","userId":"12023xxxx","userNick":"Mike","userType":"others"} - Hasilkan String Tanda Tangan.
- Gunakan algoritma HMAC-SHA1 untuk menghitung nilai HMAC dari string-to-sign yang dibuat pada Langkah 3. Rahasia AccessKey digunakan sebagai kunci untuk perhitungan HMAC. Nilai HMAC adalah array byte.Catatan Pada langkah ini, jangan lakukan operasi lain pada nilai HMAC.
- Enkode nilai HMAC dalam Base64 untuk mendapatkan string tanda tangan.
- Tetapkan nilai
tanda tanganke string tanda tangan yang diperoleh di headerAuthorization. Nilai header Authorization mengikuti sintaksis:"acs" + " " + AccessKeyId + ":" + tanda tangan.Catatan Dalam sintaksis sebelumnya, spasi ditambahkan antaraacsdanAccessKeyId.
- Gunakan algoritma HMAC-SHA1 untuk menghitung nilai HMAC dari string-to-sign yang dibuat pada Langkah 3. Rahasia AccessKey digunakan sebagai kunci untuk perhitungan HMAC. Nilai HMAC adalah array byte.
Prosedur dengan algoritma HMAC-SM3
- Serialisasi Header Permintaan.Gabungkan semua header permintaan yang dimulai dengan
x-acs-berdasarkan aturan berikut:- Ekstrak semua header HTTP yang dimulai dengan
x-acs-. - Urutkan header HTTP yang diekstraksi secara alfabetis.
- Tulis setiap header HTTP dalam format
"Nama Header HTTP" + ":" + "Nilai Header HTTP" + "\n".
- Ekstrak semua header HTTP yang dimulai dengan
- Serialisasi URI dan Parameter Kueri.Gabungkan URI dan parameter
clientInfodalam formaturi + "?clientInfo=" + "String JSON dari ClientInfo".Catatan Pada langkah ini, pengkodean URL tidak diperlukan. - Buat String-to-Sign.Gunakan sintaksis berikut:
"POST" + "\n" + "application/json" + "\n" + "Nilai header Date" + "\n" + "Header permintaan yang diserialisasi" + "\n" "URI dan parameter kueri yang diserialisasi"Contoh berikut menunjukkan string-to-sign lengkap yang dapat digunakan untuk memanggil operasi sinkron untuk moderasi gambar:POST application/json application/json Wed,29Mar202301:44:08GMT x-acs-content-sm3:690c6c542ac53eaa1e2ad724f34d60e689d11db88a2d89469be1fdb2f20fc35c x-acs-signature-method:HMAC-SM3 x-acs-signature-nonce:339497c2-d91f-4c17-a0a3-1192ee9e2202 x-acs-signature-version:1.0 x-acs-version:2018-05-09 /green/image/scan?clientInfo={"ip":"127.xxx.xxx.2","userId":"12023xxxx","userNick":"Mike","userType":"others"} - Hasilkan String Tanda Tangan.
- Gunakan algoritma HMAC-SM3 untuk menghitung nilai HMAC dari string-to-sign yang dibuat pada Langkah 3. Rahasia AccessKey digunakan sebagai kunci untuk perhitungan HMAC. Nilai HMAC adalah array byte.Catatan Pada langkah ini, jangan lakukan operasi lain pada nilai HMAC.
- Enkode nilai HMAC dalam Base64 untuk mendapatkan string tanda tangan.
- Tetapkan nilai
tanda tanganke string tanda tangan yang diperoleh di headerAuthorization. Nilai header Authorization mengikuti sintaksis:"acs" + " " + AccessKeyId + ":" + tanda tangan.Catatan Dalam sintaksis sebelumnya, spasi ditambahkan antaraacsdanAccessKeyId.
- Gunakan algoritma HMAC-SM3 untuk menghitung nilai HMAC dari string-to-sign yang dibuat pada Langkah 3. Rahasia AccessKey digunakan sebagai kunci untuk perhitungan HMAC. Nilai HMAC adalah array byte.