Mengenkripsi ulang ciphertext dengan CMK yang berbeda tanpa mengekspos plaintext.
Deskripsi operasi
Catatan
-
Untuk informasi lebih lanjut tentang kebijakan akses yang diperlukan untuk memberikan izin kepada pengguna RAM atau peran RAM untuk menggunakan operasi ini, lihat Resource Access Management.
-
Operasi ini hanya dapat diakses melalui gateway bersama, bukan gateway khusus. Untuk informasi lebih lanjut, lihat Alibaba Cloud SDK.
Saat menggunakan gateway bersama, Anda mengakses KMS melalui nama domain Internet atau VPC. Metode ini memerlukan akses Internet untuk diaktifkan. Untuk informasi lebih lanjut, lihat Access keys in a KMS instance over the Internet.
Batas QPS
Operasi ini hanya dapat diakses melalui gateway bersama. Batas queries per second (QPS) untuk pengguna tunggal adalah 750. Jika batas ini terlampaui, permintaan akan dibatasi, yang dapat memengaruhi bisnis Anda. Kami menyarankan agar Anda tetap berada dalam batas yang ditentukan.
Detail
Anda dapat menggunakan operasi ReEncrypt dalam skenario berikut:
-
Setelah customer master key (CMK) dirotasi, Anda dapat menggunakan versi kunci terbaru untuk mengenkripsi ulang data. Untuk informasi lebih lanjut tentang rotasi kunci otomatis, lihat Automatic key rotation.
-
Anda dapat mengenkripsi ulang data dengan mengubah konteks enkripsi tanpa mengubah kunci master.
-
Anda dapat mengenkripsi ulang data atau kunci data yang dienkripsi oleh satu kunci master dengan kunci master lain di KMS.
Operasi ReEncrypt memerlukan izin berikut:
-
Izin kms:ReEncryptFrom untuk kunci master sumber.
-
Izin kms:ReEncryptTo untuk kunci master tujuan.
-
Anda dapat menggunakan kms:ReEncrypt* untuk memberikan kedua izin tersebut.
Coba sekarang
Test
RAM authorization
Parameter permintaan
|
Parameter |
Type |
Required |
Description |
Example |
| CiphertextBlob |
string |
Yes |
Ciphertext yang ingin Anda enkripsi ulang.
|
ODZhOWVmZDktM2QxNi00ODk0LWJkNGYtMWZjNDNmM2YyYWJmS7FmDBBQ0BkKsQrtRnidtPwirmDcS0ZuJCU41xxAAWk4Z8qsADfbV0b+i6kQmlvj79dJdGOvtX69Uycs901q******** |
| SourceKeyId |
string |
No |
ID kunci master yang digunakan untuk mendekripsi ciphertext. Catatan
Anda harus menentukan parameter ini ketika CiphertextBlob adalah data yang dienkripsi menggunakan kunci publik setelah enkripsi kunci asimetris. |
5c438b18-05be-40ad-b6c2-3be6752c**** |
| SourceKeyVersionId |
string |
No |
ID versi kunci yang digunakan untuk mendekripsi ciphertext. Catatan
Anda harus menentukan parameter ini ketika CiphertextBlob adalah data yang dienkripsi menggunakan kunci publik setelah enkripsi kunci asimetris. |
2ab1a983-7072-4bbc-a582-584b5bd8**** |
| SourceEncryptionAlgorithm |
string |
No |
Jika CiphertextBlob adalah hasil enkripsi kunci publik, tentukan algoritma enkripsi kunci publik. Untuk informasi lebih lanjut tentang algoritma tersebut, lihat AsymmetricDecrypt.
Catatan
Anda harus menentukan parameter ini ketika CiphertextBlob adalah data yang dienkripsi menggunakan kunci publik setelah enkripsi kunci asimetris. |
RSAES_OAEP_SHA_256 |
| SourceEncryptionContext |
object |
No |
String JSON yang terdiri dari pasangan kunci-nilai. Jika Anda menentukan parameter ini ketika memanggil operasi Encrypt, GenerateDataKey, GenerateDataKeyWithoutPlaintext, atau GenerateAndExportDataKey, Anda harus menentukan parameter yang sama untuk mendekripsi data. Untuk informasi lebih lanjut, lihat EncryptionContext. Catatan
Anda harus menentukan parameter ini ketika CiphertextBlob adalah ciphertext yang dikembalikan setelah enkripsi simetris. |
{"Example":"Example"} |
| DestinationKeyId |
string |
Yes |
ID kunci master simetris yang digunakan untuk mengenkripsi ulang data setelah ciphertext didekripsi. |
1234abcd-12ab-34cd-56ef-12345678**** |
| DestinationEncryptionContext |
object |
No |
String JSON yang terdiri dari pasangan kunci-nilai. Parameter ini menentukan konteks enkripsi untuk kunci master tujuan. |
{"Example":"Example"} |
| DryRun |
string |
No |
Menentukan apakah akan mengaktifkan mode DryRun.
Mode DryRun digunakan untuk menguji panggilan API, memverifikasi apakah Anda memiliki izin untuk melakukan operasi pada sumber daya yang diperlukan, dan memeriksa apakah parameter permintaan valid. Jika Anda mengaktifkan mode DryRun, KMS selalu mengembalikan kegagalan beserta alasan kegagalannya. Alasan kegagalan meliputi:
|
false |
Elemen respons
|
Element |
Type |
Description |
Example |
|
object |
|||
| KeyId |
string |
ID kunci master yang digunakan untuk mendekripsi ciphertext. |
2ab1a983-7072-4bbc-a582-584b5bd8**** |
| KeyVersionId |
string |
ID versi kunci yang digunakan untuk mendekripsi ciphertext dari kunci master. |
202b9877-5a25-46e3-a763-e20791b5**** |
| CiphertextBlob |
string |
Ciphertext yang dienkripsi ulang menggunakan kunci master yang ditentukan. |
DZhOWVmZDktM2QxNi00ODk0LWJkNGYtMWZjNDNmM2YyYWJmaaSl+TztSIMe43nbTH/Z1Wr4XfLftKhAciUmDQXuMRl4WTvKhxjMThjK**** |
| RequestId |
string |
ID permintaan. ID ini adalah pengidentifikasi unik global yang dihasilkan oleh Alibaba Cloud untuk permintaan tersebut. Anda dapat menggunakan ID ini untuk memecahkan masalah. |
207596a2-36d3-4840-b1bd-f87044699bd7 |
Contoh
Respons sukses
JSONformat
{
"KeyId": "2ab1a983-7072-4bbc-a582-584b5bd8****",
"KeyVersionId": "202b9877-5a25-46e3-a763-e20791b5****",
"CiphertextBlob": "DZhOWVmZDktM2QxNi00ODk0LWJkNGYtMWZjNDNmM2YyYWJmaaSl+TztSIMe43nbTH/Z1Wr4XfLftKhAciUmDQXuMRl4WTvKhxjMThjK****",
"RequestId": "207596a2-36d3-4840-b1bd-f87044699bd7"
}
Kode kesalahan
|
HTTP status code |
Error code |
Error message |
Description |
|---|---|---|---|
| 400 | InvalidParameter | The specified parameter is not valid. | An invalid value is specified for the parameter. |
| 500 | InternalFailure | Internal Failure. | |
| 404 | InvalidAccessKeyId.NotFound | The Access Key ID provided does not exist in our records. | |
| 404 | Forbidden.KeyNotFound | The specified Key is not found. | The error message returned because the specified CMK does not exist. |
Lihat Error Codes untuk daftar lengkap.
Catatan rilis
Lihat Release Notes untuk daftar lengkap.