All Products
Search
Document Center

Key Management Service:ReEncrypt

Last Updated:Jun 10, 2026

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

Coba API ini di OpenAPI Explorer tanpa perlu penandatanganan manual. Panggilan yang berhasil akan secara otomatis menghasilkan contoh kode SDK sesuai dengan parameter Anda. Unduh kode tersebut dengan kredensial bawaan yang aman untuk penggunaan lokal.

Test

RAM authorization

Tidak ada otorisasi untuk operasi ini. Jika Anda mengalami masalah saat menjalankan operasi ini, hubungi dukungan teknis.

Parameter permintaan

Parameter

Type

Required

Description

Example

CiphertextBlob

string

Yes

Ciphertext yang ingin Anda enkripsi ulang.
Parameter ini dapat berupa ciphertext yang dikembalikan setelah enkripsi kunci simetris atau asimetris.

ODZhOWVmZDktM2QxNi00ODk0LWJkNGYtMWZjNDNmM2YyYWJmS7FmDBBQ0BkKsQrtRnidtPwirmDcS0ZuJCU41xxAAWk4Z8qsADfbV0b+i6kQmlvj79dJdGOvtX69Uycs901q********

SourceKeyId

string

No

ID kunci master yang digunakan untuk mendekripsi ciphertext.
Pengidentifikasi unik global dari kunci master.

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.
Nilai yang valid:

  • RSAES_OAEP_SHA_256

  • RSAES_OAEP_SHA_1

  • SM2PKE

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.

  • true: mengaktifkan mode DryRun.

  • false (default): menonaktifkan 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:

  • DryRunOperationError: Permintaan akan berhasil jika parameter DryRun tidak dikonfigurasi.

  • ValidationError: Parameter yang ditentukan dalam permintaan tidak valid.

  • AccessDeniedError: Anda tidak diberi otorisasi untuk melakukan operasi pada sumber daya KMS.

false

Elemen respons

Element

Type

Description

Example

object

KeyId

string

ID kunci master yang digunakan untuk mendekripsi ciphertext.
Pengidentifikasi unik global dari kunci master.

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.