

Ada lebih banyak contoh AWS SDK yang tersedia di repo Contoh [SDK AWS Doc](https://github.com/awsdocs/aws-doc-sdk-examples). GitHub 

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# AWS KMS contoh menggunakan AWS CLI
<a name="cli_2_kms_code_examples"></a>

Contoh kode berikut menunjukkan cara melakukan tindakan dan mengimplementasikan skenario umum dengan menggunakan AWS Command Line Interface with AWS KMS.

*Tindakan* merupakan kutipan kode dari program yang lebih besar dan harus dijalankan dalam konteks. Sementara tindakan menunjukkan cara memanggil fungsi layanan individual, Anda dapat melihat tindakan dalam konteks dalam skenario terkait.

Setiap contoh menyertakan tautan ke kode sumber lengkap, di mana Anda dapat menemukan instruksi tentang cara mengatur dan menjalankan kode dalam konteks.

**Topics**
+ [Tindakan](#actions)

## Tindakan
<a name="actions"></a>

### `cancel-key-deletion`
<a name="kms_CancelKeyDeletion_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`cancel-key-deletion`.

**AWS CLI**  
**Untuk membatalkan penghapusan terjadwal kunci KMS yang dikelola pelanggan**  
`cancel-key-deletion`Contoh berikut membatalkan penghapusan terjadwal kunci KMS yang dikelola pelanggan.  

```
aws kms cancel-key-deletion \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Output:  

```
{
    "KeyId": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab"
}
```
Ketika `cancel-key-deletion` perintah berhasil, penghapusan terjadwal dibatalkan. Namun, status kunci dari kunci KMS adalah`Disabled`, jadi Anda tidak dapat menggunakan kunci KMS dalam operasi kriptografi. Untuk mengembalikan fungsinya, gunakan `enable-key` perintah.  
Untuk informasi selengkapnya, lihat [Penjadwalan dan pembatalan penghapusan kunci di Panduan Pengembang](https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html#deleting-keys-scheduling-key-deletion) Layanan *Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [CancelKeyDeletion](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/cancel-key-deletion.html)di *Referensi AWS CLI Perintah*. 

### `connect-custom-key-store`
<a name="kms_ConnectCustomKeyStore_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`connect-custom-key-store`.

**AWS CLI**  
**Untuk menghubungkan toko kunci kustom**  
`connect-custom-key-store`Contoh berikut menghubungkan kembali toko kunci kustom yang ditentukan. Anda dapat menggunakan perintah seperti ini untuk menghubungkan toko kunci khusus untuk pertama kalinya atau untuk menghubungkan kembali toko kunci yang terputus.  
Anda dapat menggunakan perintah ini untuk menghubungkan toko kunci AWS CloudHSM atau toko kunci eksternal.  

```
aws kms connect-custom-key-store \
    --custom-key-store-id cks-1234567890abcdef0
```
Perintah ini tidak memberikan output apa pun. Untuk memverifikasi bahwa perintah itu efektif, gunakan `describe-custom-key-stores` perintah.  
*Untuk informasi tentang menghubungkan penyimpanan kunci AWS CloudHSM, [lihat Menyambungkan dan memutuskan penyimpanan kunci AWS CloudHSM di Panduan Pengembang Layanan Manajemen Kunci](https://docs.aws.amazon.com/kms/latest/developerguide/disconnect-keystore.html).AWS *  
Untuk informasi tentang menghubungkan penyimpanan kunci eksternal, lihat [Menghubungkan dan memutuskan penyimpanan kunci eksternal](https://docs.aws.amazon.com/kms/latest/developerguide/xks-connect-disconnect.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [ConnectCustomKeyStore](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/connect-custom-key-store.html)di *Referensi AWS CLI Perintah*. 

### `create-alias`
<a name="kms_CreateAlias_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`create-alias`.

**AWS CLI**  
**Untuk membuat alias untuk kunci KMS**  
`create-alias`Perintah berikut membuat alias bernama `example-alias` untuk kunci KMS diidentifikasi oleh ID kunci. `1234abcd-12ab-34cd-56ef-1234567890ab`  
Nama alias harus dimulai dengan`alias/`. Jangan gunakan nama alias yang dimulai dengan`alias/aws`; ini dicadangkan untuk digunakan oleh AWS.  

```
aws kms create-alias \
    --alias-name alias/example-alias \
    --target-key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Perintah ini tidak mengembalikan output apa pun. Untuk melihat alias baru, gunakan `list-aliases` perintah.  
Untuk informasi selengkapnya, lihat [Menggunakan alias](https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [CreateAlias](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/create-alias.html)di *Referensi AWS CLI Perintah*. 

### `create-custom-key-store`
<a name="kms_CreateCustomKeyStore_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`create-custom-key-store`.

**AWS CLI**  
**Contoh 1: Untuk membuat toko kunci AWS CloudHSM**  
`create-custom-key-store`Contoh berikut membuat penyimpanan kunci AWS CloudHSM yang didukung oleh klaster AWS CloudHSM menggunakan parameter yang diperlukan. Anda juga dapat menambahkan`custom-key-store-type``parameter with the default value: ``AWS_CLOUDHSM`.  
Untuk menentukan input file untuk `trust-anchor-certificate` perintah di AWS CLI, `file://` awalan diperlukan.  

```
aws kms create-custom-key-store \
    --custom-key-store-name ExampleCloudHSMKeyStore \
    --cloud-hsm-cluster-id cluster-1a23b4cdefg \
    --key-store-password kmsPswd \
    --trust-anchor-certificate file://customerCA.crt
```
Output:  

```
{
    "CustomKeyStoreId": cks-1234567890abcdef0
}
```
Untuk informasi selengkapnya, lihat [Membuat penyimpanan kunci AWS CloudHSM](https://docs.aws.amazon.com/kms/latest/developerguide/create-keystore.html) di Panduan *AWS Pengembang Layanan Manajemen Kunci*.  
**Contoh 2: Untuk membuat penyimpanan kunci eksternal dengan konektivitas titik akhir publik**  
`create-custom-key-store`Contoh berikut membuat penyimpanan kunci eksternal (XKS) yang berkomunikasi dengan AWS KMS melalui internet.  
Dalam contoh ini, `XksProxyUriPath` menggunakan awalan opsional dari. `example-prefix`  
CATATAN: Jika Anda menggunakan AWS CLI versi 1.0, jalankan perintah berikut sebelum menentukan parameter dengan nilai HTTP atau HTTPS, seperti parameter. XksProxyUriEndpoint   

```
aws configure set cli_follow_urlparam false
```
Jika tidak, AWS CLI versi 1.0 menggantikan nilai parameter dengan konten yang ditemukan di alamat URI tersebut.  

```
aws kms create-custom-key-store \
    --custom-key-store-name ExamplePublicEndpointXKS \
    --custom-key-store-type EXTERNAL_KEY_STORE \
    --xks-proxy-connectivity PUBLIC_ENDPOINT \
    --xks-proxy-uri-endpoint "https://myproxy.xks.example.com" \
    --xks-proxy-uri-path "/example-prefix/kms/xks/v1" \
    --xks-proxy-authentication-credential "AccessKeyId=ABCDE12345670EXAMPLE, RawSecretAccessKey=DXjSUawnel2fr6SKC7G25CNxTyWKE5PF9XX6H/u9pSo="
```
Output:  

```
{
    "CustomKeyStoreId": cks-2234567890abcdef0
}
```
Untuk informasi selengkapnya, lihat [Membuat penyimpanan kunci eksternal](https://docs.aws.amazon.com/kms/latest/developerguide/create-keystorecreate-xks-keystore.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
**Contoh 3: Untuk membuat penyimpanan kunci eksternal dengan konektivitas layanan titik akhir VPC**  
`create-custom-key-store`Contoh berikut membuat penyimpanan kunci eksternal (XKS) yang menggunakan layanan endpoint Amazon VPC untuk berkomunikasi dengan KMS. AWS   
CATATAN: Jika Anda menggunakan AWS CLI versi 1.0, jalankan perintah berikut sebelum menentukan parameter dengan nilai HTTP atau HTTPS, seperti parameter. XksProxyUriEndpoint   

```
aws configure set cli_follow_urlparam false
```
Jika tidak, AWS CLI versi 1.0 menggantikan nilai parameter dengan konten yang ditemukan di alamat URI tersebut.  

```
aws kms create-custom-key-store \
    --custom-key-store-name ExampleVPCEndpointXKS \
    --custom-key-store-type EXTERNAL_KEY_STORE \
    --xks-proxy-connectivity VPC_ENDPOINT_SERVICE \
    --xks-proxy-uri-endpoint "https://myproxy-private.xks.example.com" \
    --xks-proxy-uri-path "/kms/xks/v1" \
    --xks-proxy-vpc-endpoint-service-name "com.amazonaws.vpce.us-east-1.vpce-svc-example1" \
    --xks-proxy-authentication-credential "AccessKeyId=ABCDE12345670EXAMPLE, RawSecretAccessKey=DXjSUawnel2fr6SKC7G25CNxTyWKE5PF9XX6H/u9pSo="
```
Output:  

```
{
    "CustomKeyStoreId": cks-3234567890abcdef0
}
```
Untuk informasi selengkapnya, lihat [Membuat penyimpanan kunci eksternal](https://docs.aws.amazon.com/kms/latest/developerguide/create-keystorecreate-xks-keystore.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [CreateCustomKeyStore](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/create-custom-key-store.html)di *Referensi AWS CLI Perintah*. 

### `create-grant`
<a name="kms_CreateGrant_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`create-grant`.

**AWS CLI**  
**Untuk membuat hibah**  
`create-grant`Contoh berikut membuat hibah yang memungkinkan `exampleUser` pengguna untuk menggunakan `decrypt` perintah pada kunci KMS `1234abcd-12ab-34cd-56ef-1234567890ab` contoh. Kepala sekolah yang pensiun adalah `adminRole` perannya. Hibah menggunakan batasan `EncryptionContextSubset` hibah untuk mengizinkan izin ini hanya jika konteks enkripsi dalam `decrypt` permintaan menyertakan pasangan nilai `"Department": "IT"` kunci.  

```
aws kms create-grant \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --grantee-principal arn:aws:iam::123456789012:user/exampleUser \
    --operations Decrypt \
    --constraints EncryptionContextSubset={Department=IT} \
    --retiring-principal arn:aws:iam::123456789012:role/adminRole
```
Output:  

```
{
    "GrantId": "1a2b3c4d2f5e69f440bae30eaec9570bb1fb7358824f9ddfa1aa5a0dab1a59b2",
    "GrantToken": "<grant token here>"
}
```
Untuk melihat informasi terperinci tentang hibah, gunakan `list-grants` perintah.  
Untuk informasi selengkapnya, lihat [Hibah di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html) di Panduan *Pengembang Layanan Manajemen AWS Utama*.  
+  Untuk detail API, lihat [CreateGrant](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/create-grant.html)di *Referensi AWS CLI Perintah*. 

### `create-key`
<a name="kms_CreateKey_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`create-key`.

**AWS CLI**  
**Contoh 1: Untuk membuat kunci KMS yang dikelola pelanggan di AWS KMS**  
`create-key`Contoh berikut membuat kunci KMS enkripsi simetris.  
Untuk membuat kunci KMS dasar, kunci enkripsi simetris, Anda tidak perlu menentukan parameter apa pun. Nilai default untuk parameter tersebut membuat kunci enkripsi simetris.  
Karena perintah ini tidak menentukan kebijakan kunci, kunci KMS mendapatkan [kebijakan kunci default untuk kunci](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default) KMS yang dibuat secara terprogram. Untuk melihat kebijakan kunci, gunakan `get-key-policy` perintah. Untuk mengubah kebijakan kunci, gunakan `put-key-policy` perintah.  

```
aws kms create-key
```
`create-key`Perintah mengembalikan metadata kunci, termasuk ID kunci dan ARN dari kunci KMS baru. Anda dapat menggunakan nilai-nilai ini untuk mengidentifikasi kunci KMS dalam operasi AWS KMS lainnya. Output tidak termasuk tag. Untuk melihat tag untuk kunci KMS, gunakan tombol. `list-resource-tags command`  
Output:  

```
{
    "KeyMetadata": {
        "AWSAccountId": "111122223333",
        "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "CreationDate": "2017-07-05T14:04:55-07:00",
        "CurrentKeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6",
        "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT",
        "Description": "",
        "Enabled": true,
        "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
        "KeyManager": "CUSTOMER",
        "KeySpec": "SYMMETRIC_DEFAULT",
        "KeyState": "Enabled",
        "KeyUsage": "ENCRYPT_DECRYPT",
        "MultiRegion": false,
        "Origin": "AWS_KMS"
        "EncryptionAlgorithms": [
            "SYMMETRIC_DEFAULT"
        ]
    }
}
```
Catatan: `create-key` Perintah tidak memungkinkan Anda menentukan alias, Untuk membuat alias untuk kunci KMS baru, gunakan perintah. `create-alias`  
Untuk informasi selengkapnya, lihat [Membuat AWS kunci](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) *di Panduan Pengembang Layanan Manajemen Kunci*.  
**Contoh 2: Untuk membuat kunci KMS RSA asimetris untuk enkripsi dan dekripsi**  
`create-key`Contoh berikut membuat kunci KMS yang berisi asimetris RSA key pair untuk enkripsi dan dekripsi. Spesifikasi kunci dan penggunaan kunci tidak dapat diubah setelah kunci dibuat. :  

```
aws kms create-key \
   --key-spec RSA_4096 \
   --key-usage ENCRYPT_DECRYPT
```
Output:  

```
{
    "KeyMetadata": {
        "Arn": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "AWSAccountId": "111122223333",
        "CreationDate": "2021-04-05T14:04:55-07:00",
        "CustomerMasterKeySpec": "RSA_4096",
        "Description": "",
        "Enabled": true,
        "EncryptionAlgorithms": [
            "RSAES_OAEP_SHA_1",
            "RSAES_OAEP_SHA_256"
        ],
        "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
        "KeyManager": "CUSTOMER",
        "KeySpec": "RSA_4096",
        "KeyState": "Enabled",
        "KeyUsage": "ENCRYPT_DECRYPT",
        "MultiRegion": false,
        "Origin": "AWS_KMS"
    }
}
```
Untuk informasi selengkapnya, lihat [Kunci asimetris di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) di Panduan *Pengembang Layanan Manajemen AWS Kunci*.  
**Contoh 3: Untuk membuat kunci KMS kurva elips asimetris untuk penandatanganan dan verifikasi**  
Untuk membuat kunci KMS asimetris yang berisi key pair asymmetric elliptic curve (ECC) untuk penandatanganan dan verifikasi. `--key-usage`Parameter diperlukan meskipun `SIGN_VERIFY` merupakan satu-satunya nilai yang valid untuk kunci ECC KMS. Spesifikasi kunci dan penggunaan kunci tidak dapat diubah setelah kunci dibuat. :  

```
aws kms create-key \
    --key-spec ECC_NIST_P521 \
    --key-usage SIGN_VERIFY
```
Output:  

```
{
    "KeyMetadata": {
        "Arn": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "AWSAccountId": "111122223333",
        "CreationDate": "2019-12-02T07:48:55-07:00",
        "CustomerMasterKeySpec": "ECC_NIST_P521",
        "Description": "",
        "Enabled": true,
        "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
        "KeyManager": "CUSTOMER",
        "KeySpec": "ECC_NIST_P521",
        "KeyState": "Enabled",
        "KeyUsage": "SIGN_VERIFY",
        "MultiRegion": false,
        "Origin": "AWS_KMS",
        "SigningAlgorithms": [
            "ECDSA_SHA_512"
        ]
    }
}
```
Untuk informasi selengkapnya, lihat [Kunci asimetris di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) di Panduan *Pengembang Layanan Manajemen AWS Kunci*.  
**Contoh 4: Untuk membuat kunci KMS ML-DSA asimetris untuk penandatanganan dan verifikasi**  
Contoh ini membuat kunci modul-kisi digital signature algorithm (ML-DSA) untuk penandatanganan dan verifikasi. Parameter penggunaan kunci diperlukan meskipun `SIGN_VERIFY` merupakan satu-satunya nilai yang valid untuk kunci ML-DSA.  

```
aws kms create-key \
    --key-spec ML_DSA_65 \
    --key-usage SIGN_VERIFY
```
Output:  

```
{
    "KeyMetadata": {
        "Arn": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "AWSAccountId": "111122223333",
        "CreationDate": "2019-12-02T07:48:55-07:00",
        "Description": "",
        "Enabled": true,
        "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
        "KeyManager": "CUSTOMER",
        "KeySpec": "ML_DSA_65",
        "KeyState": "Enabled",
        "KeyUsage": "SIGN_VERIFY",
        "MultiRegion": false,
        "Origin": "AWS_KMS",
        "SigningAlgorithms": [
            "ML_DSA_SHAKE_256"
        ]
    }
}
```
Untuk informasi selengkapnya, lihat [Kunci asimetris di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) di Panduan *Pengembang Layanan Manajemen AWS Kunci*.  
**Contoh 5: Untuk membuat kunci HMAC KMS**  
`create-key`Contoh berikut membuat kunci KMS HMAC 384-bit. `GENERATE_VERIFY_MAC`Nilai untuk `--key-usage` parameter diperlukan meskipun itu satu-satunya nilai yang valid untuk kunci HMAC KMS.  

```
aws kms create-key \
    --key-spec HMAC_384 \
    --key-usage GENERATE_VERIFY_MAC
```
Output:  

```
{
    "KeyMetadata": {
        "Arn": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "AWSAccountId": "111122223333",
        "CreationDate": "2022-04-05T14:04:55-07:00",
        "CustomerMasterKeySpec": "HMAC_384",
        "Description": "",
        "Enabled": true,
        "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
        "KeyManager": "CUSTOMER",
        "KeySpec": "HMAC_384",
        "KeyState": "Enabled",
        "KeyUsage": "GENERATE_VERIFY_MAC",
        "MacAlgorithms": [
            "HMAC_SHA_384"
        ],
        "MultiRegion": false,
        "Origin": "AWS_KMS"
    }
}
```
Untuk informasi selengkapnya, lihat [kunci HMAC di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html) di Panduan *Pengembang Layanan Manajemen AWS Kunci*.  
**Contoh 6: Untuk membuat kunci KMS primer Multi-wilayah**  
`create-key`Contoh berikut membuat kunci enkripsi simetris primer Multi-region. Karena nilai default untuk semua parameter membuat kunci enkripsi simetris, hanya `--multi-region` parameter yang diperlukan untuk kunci KMS ini. Di AWS CLI, untuk menunjukkan bahwa parameter Boolean benar, cukup tentukan nama parameternya.  

```
aws kms create-key \
    --multi-region
```
Output:  

```
{
    "KeyMetadata": {
        "Arn": "arn:aws:kms:us-west-2:111122223333:key/mrk-1234abcd12ab34cd56ef12345678990ab",
        "AWSAccountId": "111122223333",
        "CreationDate": "2021-09-02T016:15:21-09:00",
        "CurrentKeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6",
        "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT",
        "Description": "",
        "Enabled": true,
        "EncryptionAlgorithms": [
          "SYMMETRIC_DEFAULT"
        ],
        "KeyId": "mrk-1234abcd12ab34cd56ef12345678990ab",
        "KeyManager": "CUSTOMER",
        "KeySpec": "SYMMETRIC_DEFAULT",
        "KeyState": "Enabled",
        "KeyUsage": "ENCRYPT_DECRYPT",
        "MultiRegion": true,
        "MultiRegionConfiguration": {
            "MultiRegionKeyType": "PRIMARY",
            "PrimaryKey": {
                "Arn": "arn:aws:kms:us-west-2:111122223333:key/mrk-1234abcd12ab34cd56ef12345678990ab",
                "Region": "us-west-2"
            },
            "ReplicaKeys": []
        },
        "Origin": "AWS_KMS"
    }
}
```
Untuk informasi selengkapnya, lihat [Kunci asimetris di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) di Panduan *Pengembang Layanan Manajemen AWS Kunci*.  
**Contoh 7: Untuk membuat kunci KMS untuk bahan kunci impor**  
`create-key`Contoh berikut membuat membuat kunci KMS tanpa bahan kunci. Ketika operasi selesai, Anda dapat mengimpor materi kunci Anda sendiri ke dalam kunci KMS. Untuk membuat kunci KMS ini, atur `--origin` parameter ke`EXTERNAL`.  

```
aws kms create-key \
    --origin EXTERNAL
```
Output:  

```
{
     "KeyMetadata": {
         "Arn": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
         "AWSAccountId": "111122223333",
         "CreationDate": "2019-12-02T07:48:55-07:00",
         "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT",
         "Description": "",
         "Enabled": false,
         "EncryptionAlgorithms": [
             "SYMMETRIC_DEFAULT"
         ],
         "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
         "KeyManager": "CUSTOMER",
         "KeySpec": "SYMMETRIC_DEFAULT",
         "KeyState": "PendingImport",
         "KeyUsage": "ENCRYPT_DECRYPT",
         "MultiRegion": false,
         "Origin": "EXTERNAL"
     }
 }
```
Untuk informasi selengkapnya, lihat [Mengimpor materi kunci dalam kunci AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) di Panduan *Pengembang Layanan Manajemen AWS Kunci*.  
**Contoh 6: Untuk membuat kunci KMS di toko kunci AWS CloudHSM**  
`create-key`Contoh berikut membuat membuat kunci KMS di toko kunci AWS CloudHSM tertentu. Operasi membuat kunci KMS dan metadatanya di AWS KMS dan membuat materi kunci di klaster CloudHSM yang terkait dengan penyimpanan kunci AWS kustom. Parameter `--custom-key-store-id` dan `--origin` diperlukan.  

```
aws kms create-key \
    --origin AWS_CLOUDHSM \
    --custom-key-store-id cks-1234567890abcdef0
```
Output:  

```
{
    "KeyMetadata": {
        "Arn": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "AWSAccountId": "111122223333",
        "CloudHsmClusterId": "cluster-1a23b4cdefg",
        "CreationDate": "2019-12-02T07:48:55-07:00",
        "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT",
        "CustomKeyStoreId": "cks-1234567890abcdef0",
        "Description": "",
        "Enabled": true,
        "EncryptionAlgorithms": [
            "SYMMETRIC_DEFAULT"
        ],
        "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
        "KeyManager": "CUSTOMER",
        "KeySpec": "SYMMETRIC_DEFAULT",
        "KeyState": "Enabled",
        "KeyUsage": "ENCRYPT_DECRYPT",
        "MultiRegion": false,
        "Origin": "AWS_CLOUDHSM"
    }
}
```
Untuk informasi selengkapnya, lihat [AWS Penyimpanan kunci CloudHSM](https://docs.aws.amazon.com/kms/latest/developerguide/keystore-cloudhsm.html) di Panduan *AWS Pengembang Layanan Manajemen Kunci*.  
**Contoh 8: Untuk membuat kunci KMS di toko kunci eksternal**  
`create-key`Contoh berikut membuat membuat kunci KMS di toko kunci eksternal yang ditentukan. `--xks-key-id`Parameter `--custom-key-store-id``--origin`,, dan diperlukan dalam perintah ini.  
`--xks-key-id`Parameter menentukan ID kunci enkripsi simetris yang ada di pengelola kunci eksternal Anda. Kunci ini berfungsi sebagai bahan kunci eksternal untuk kunci KMS.Nilai `--origin` parameter `EXTERNAL_KEY_STORE` `custom-key-store-id` harus.Parameter harus mengidentifikasi penyimpanan kunci eksternal yang terhubung ke proxy penyimpanan kunci eksternal.  

```
aws kms create-key \
    --origin EXTERNAL_KEY_STORE \
    --custom-key-store-id cks-9876543210fedcba9 \
    --xks-key-id bb8562717f809024
```
Output:  

```
{
    "KeyMetadata": {
        "Arn": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "AWSAccountId": "111122223333",
        "CreationDate": "2022-12-02T07:48:55-07:00",
        "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT",
        "CustomKeyStoreId": "cks-9876543210fedcba9",
        "Description": "",
        "Enabled": true,
        "EncryptionAlgorithms": [
            "SYMMETRIC_DEFAULT"
        ],
        "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
        "KeyManager": "CUSTOMER",
        "KeySpec": "SYMMETRIC_DEFAULT",
        "KeyState": "Enabled",
        "KeyUsage": "ENCRYPT_DECRYPT",
        "MultiRegion": false,
        "Origin": "EXTERNAL_KEY_STORE",
        "XksKeyConfiguration": {
            "Id": "bb8562717f809024"
        }
    }
}
```
Untuk informasi selengkapnya, lihat [Penyimpanan kunci eksternal](https://docs.aws.amazon.com/kms/latest/developerguide/keystore-external.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [CreateKey](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/create-key.html)di *Referensi AWS CLI Perintah*. 

### `decrypt`
<a name="kms_Decrypt_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`decrypt`.

**AWS CLI**  
**Contoh 1: Untuk mendekripsi pesan terenkripsi dengan kunci KMS simetris (Linux dan macOS)**  
Contoh `decrypt` perintah berikut menunjukkan cara yang disarankan untuk mendekripsi data dengan CLI. AWS Versi ini menunjukkan cara mendekripsi data di bawah kunci KMS simetris.  
Berikan ciphertext dalam file.Dalam nilai `--ciphertext-blob` parameter, gunakan `fileb://` awalan, yang memberitahu CLI untuk membaca data dari file biner. Jika file tidak ada di direktori saat ini, ketik path lengkap ke file. Untuk informasi lebih lanjut tentang membaca nilai parameter AWS CLI dari file, lihat Memuat parameter AWS CLI dari file < https://docs.aws.amazon.com/cli/ latest/userguide/cli - usage-parameters-file .html> di *Panduan Pengguna Antarmuka Baris AWS Perintah dan Praktik Terbaik untuk Parameter File Lokal< https://aws.amazon.com/blogs/ pengembang/ best-practices-for-local -file-parameters/> di *Blog Alat Baris* Perintah*. Tentukan kunci KMS untuk mendekripsi cipherText.Parameter tidak diperlukan saat AWS mendekripsi dengan kunci KMS simetris. `--key-id` AWS KMS bisa mendapatkan ID kunci dari kunci KMS yang digunakan untuk mengenkripsi data dari metadata dalam ciphertext. Tetapi selalu merupakan praktik terbaik untuk menentukan kunci KMS yang Anda gunakan. Praktek ini memastikan bahwa Anda menggunakan kunci KMS yang Anda inginkan, dan mencegah Anda dari secara tidak sengaja mendekripsi ciphertext menggunakan kunci KMS yang tidak Anda percayai. Minta output plaintext sebagai nilai teks.Parameter `--query` memberitahu CLI untuk mendapatkan hanya nilai bidang dari output. `Plaintext` `--output`Parameter mengembalikan output sebagai text.base64-decode plaintext dan menyimpannya dalam file.Contoh berikut pipa (\$1) nilai `Plaintext` parameter ke utilitas Base64, yang menerjemahkan itu. Kemudian, itu mengalihkan (>) output yang diterjemahkan ke file. `ExamplePlaintext`  
Sebelum menjalankan perintah ini, ganti ID kunci contoh dengan ID kunci yang valid dari AWS akun Anda.  

```
aws kms decrypt \
    --ciphertext-blob fileb://ExampleEncryptedFile \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --output text \
    --query Plaintext | base64 \
    --decode > ExamplePlaintextFile
```
Perintah ini tidak menghasilkan output. Output dari `decrypt` perintah adalah base64-decoded dan disimpan dalam file.  
Untuk informasi selengkapnya, lihat [Mendekripsi](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) di Referensi *API Layanan Manajemen AWS Kunci*.  
**Contoh 2: Untuk mendekripsi pesan terenkripsi dengan tombol KMS simetris (prompt perintah Windows)**  
Contoh berikut adalah sama dengan yang sebelumnya kecuali bahwa ia menggunakan `certutil` utilitas untuk Base64-decode data plaintext. Prosedur ini membutuhkan dua perintah, seperti yang ditunjukkan pada contoh berikut.  
Sebelum menjalankan perintah ini, ganti ID kunci contoh dengan ID kunci yang valid dari AWS akun Anda.  

```
aws kms decrypt ^
    --ciphertext-blob fileb://ExampleEncryptedFile ^
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab ^
    --output text ^
    --query Plaintext > ExamplePlaintextFile.base64
```
Jalankan perintah `certutil`.  

```
certutil -decode ExamplePlaintextFile.base64 ExamplePlaintextFile
```
Output:  

```
Input Length = 18
Output Length = 12
CertUtil: -decode command completed successfully.
```
Untuk informasi selengkapnya, lihat [Mendekripsi](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) di Referensi *API Layanan Manajemen AWS Kunci*.  
**Contoh 3: Untuk mendekripsi pesan terenkripsi dengan kunci KMS asimetris (Linux dan macOS)**  
Contoh `decrypt` perintah berikut menunjukkan cara mendekripsi data yang dienkripsi di bawah kunci KMS asimetris RSA.  
Saat menggunakan kunci KMS asimetris, `encryption-algorithm` parameter, yang menentukan algoritma yang digunakan untuk mengenkripsi plaintext, diperlukan.  
Sebelum menjalankan perintah ini, ganti ID kunci contoh dengan ID kunci yang valid dari AWS akun Anda.  

```
aws kms decrypt \
    --ciphertext-blob fileb://ExampleEncryptedFile \
    --key-id 0987dcba-09fe-87dc-65ba-ab0987654321 \
    --encryption-algorithm RSAES_OAEP_SHA_256 \
    --output text \
    --query Plaintext | base64 \
    --decode > ExamplePlaintextFile
```
Perintah ini tidak menghasilkan output. Output dari `decrypt` perintah adalah base64-decoded dan disimpan dalam file.  
Untuk informasi selengkapnya, lihat [Kunci asimetris di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) di Panduan *Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [Mendekripsi](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/decrypt.html) di Referensi *AWS CLI Perintah*. 

### `delete-alias`
<a name="kms_DeleteAlias_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`delete-alias`.

**AWS CLI**  
**Untuk menghapus alias AWS KMS**  
`delete-alias`Contoh berikut menghapus `alias/example-alias` alias. Nama alias harus dimulai dengan alias/.  

```
aws kms delete-alias \
    --alias-name alias/example-alias
```
Perintah ini tidak menghasilkan output. Untuk menemukan alias, gunakan `list-aliases` perintah.  
Untuk informasi selengkapnya, lihat [Menghapus alias](https://docs.aws.amazon.com/kms/latest/developerguide/alias-manage.html#alias-delete) di Panduan *Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [DeleteAlias](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/delete-alias.html)di *Referensi AWS CLI Perintah*. 

### `delete-custom-key-store`
<a name="kms_DeleteCustomKeyStore_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`delete-custom-key-store`.

**AWS CLI**  
**Untuk menghapus toko kunci kustom**  
`delete-custom-key-store`Contoh berikut menghapus toko kunci kustom yang ditentukan.  
Menghapus penyimpanan kunci AWS CloudHSM tidak berpengaruh pada klaster CloudHSM terkait. Menghapus penyimpanan kunci eksternal tidak berpengaruh pada proxy penyimpanan kunci eksternal terkait, pengelola kunci eksternal, atau kunci eksternal.  
**CATATAN:** Sebelum Anda dapat menghapus toko kunci khusus, Anda harus menjadwalkan penghapusan semua kunci KMS di toko kunci khusus dan kemudian menunggu kunci KMS tersebut dihapus. Kemudian, Anda harus memutuskan sambungan toko kunci khusus. Untuk bantuan menemukan kunci KMS di toko kunci kustom Anda, lihat [Menghapus penyimpanan kunci (API) CloudHSM](https://docs.aws.amazon.com/kms/latest/developerguide/delete-keystore.html#delete-keystore-api) di Panduan *AWS Pengembang Layanan Manajemen Kunci*. AWS   

```
delete-custom-key-store \
    --custom-key-store-id cks-1234567890abcdef0
```
Perintah ini tidak memberikan output apa pun. Untuk memverifikasi bahwa penyimpanan kunci khusus dihapus, gunakan `describe-custom-key-stores` perintah.  
*Untuk selengkapnya tentang menghapus penyimpanan kunci AWS CloudHSM, lihat [Menghapus penyimpanan kunci AWS CloudHSM di Panduan Pengembang Layanan Manajemen](https://docs.aws.amazon.com/kms/latest/developerguide/delete-keystore.html) Kunci.AWS *  
Untuk informasi tentang menghapus penyimpanan kunci eksternal, lihat [Menghapus penyimpanan kunci eksternal di Panduan](https://docs.aws.amazon.com/kms/latest/developerguide/delete-xks.html) *Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [DeleteCustomKeyStore](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/delete-custom-key-store.html)di *Referensi AWS CLI Perintah*. 

### `delete-imported-key-material`
<a name="kms_DeleteImportedKeyMaterial_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`delete-imported-key-material`.

**AWS CLI**  
**Untuk menghapus materi kunci yang diimpor dari kunci KMS**  
`delete-imported-key-material`Contoh berikut menghapus materi kunci yang telah diimpor ke kunci KMS.  

```
aws kms delete-imported-key-material \
   --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Output:  

```
{
    "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
    "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6"
}
```
Untuk informasi selengkapnya, lihat [Menghapus materi kunci yang diimpor](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-delete-key-material.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [DeleteImportedKeyMaterial](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/delete-imported-key-material.html)di *Referensi AWS CLI Perintah*. 

### `derive-shared-secret`
<a name="kms_DeriveSharedSecret_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`derive-shared-secret`.

**AWS CLI**  
**Untuk mendapatkan rahasia bersama**  
`derive-shared-secret`Contoh berikut memperoleh rahasia bersama menggunakan algoritma perjanjian kunci.  
Anda harus menggunakan kurva eliptik yang direkomendasikan NIST asimetris (ECC) atau SM2 (hanya Wilayah Tiongkok) key pair KMS dengan nilai to call. `KeyUsage` `KEY_AGREEMENT` DeriveSharedSecret  

```
aws kms derive-shared-secret \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --key-agreement-algorithm ECDH \
    --public-key "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvH3Yj0wbkLEpUl95Cv1cJVjsVNSjwGq3tCLnzXfhVwVvmzGN8pYj3U8nKwgouaHbBWNJYjP5VutbbkKS4Kv4GojwZBJyHN17kmxo8yTjRmjR15SKIQ8cqRA2uaERMLnpztIXdZp232PQPbWGxDyXYJ0aJ5EFSag"
```
Output:  

```
{
    "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
    "SharedSecret": "MEYCIQCKZLWyTk5runarx6XiAkU9gv3lbwPO/pHa+DXFehzdDwIhANwpsIV2g/9SPWLLsF6p/hiSskuIXMTRwqrMdVKWTMHG",
    "KeyAgreementAlgorithm": "ECDH",
    "KeyOrigin": "AWS_KMS"
}
```
Untuk informasi selengkapnya, lihat [DeriveSharedSecret](https://docs.aws.amazon.com/kms/latest/APIReference/API_DeriveSharedSecret.html)di *Referensi API Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [DeriveSharedSecret](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/derive-shared-secret.html)di *Referensi AWS CLI Perintah*. 

### `describe-custom-key-stores`
<a name="kms_DescribeCustomKeyStores_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`describe-custom-key-stores`.

**AWS CLI**  
**Contoh 1: Untuk mendapatkan detail tentang toko kunci AWS CloudHSM**  
`describe-custom-key-store`Contoh berikut menampilkan rincian tentang penyimpanan kunci AWS CloudHSM yang ditentukan. Perintahnya sama untuk semua jenis penyimpanan kunci khusus, tetapi outputnya berbeda dengan jenis penyimpanan kunci dan, untuk penyimpanan kunci eksternal, opsi konektivitasnya.  
Secara default, perintah ini menampilkan informasi tentang semua toko kunci khusus di akun dan Wilayah. Untuk menampilkan informasi tentang penyimpanan kunci khusus tertentu, gunakan `custom-key-store-id` parameter `custom-key-store-name` atau.  

```
aws kms describe-custom-key-stores \
    --custom-key-store-name ExampleCloudHSMKeyStore
```
Output dari perintah ini mencakup rincian berguna tentang penyimpanan kunci AWS CloudHSM termasuk status koneksinya (). `ConnectionState` Jika status koneksi`FAILED`, output mencakup `ConnectionErrorCode` bidang yang menjelaskan masalah.  
Output:  

```
{
    "CustomKeyStores": [
        {
            "CloudHsmClusterId": "cluster-1a23b4cdefg",
            "ConnectionState": "CONNECTED",
            "CreationDate": "2022-04-05T14:04:55-07:00",
            "CustomKeyStoreId": "cks-1234567890abcdef0",
            "CustomKeyStoreName": "ExampleExternalKeyStore",
            "TrustAnchorCertificate": "<certificate appears here>"
        }
    ]
}
```
Untuk informasi selengkapnya, lihat [Melihat penyimpanan kunci AWS CloudHSM](https://docs.aws.amazon.com/kms/latest/developerguide/view-keystore.html) di Panduan *AWS Pengembang Layanan Manajemen Kunci*.  
**Contoh 2: Untuk mendapatkan detail tentang penyimpanan kunci eksternal dengan konektivitas titik akhir publik**  
`describe-custom-key-store`Contoh berikut menampilkan rincian tentang penyimpanan kunci eksternal yang ditentukan. Perintahnya sama untuk semua jenis penyimpanan kunci khusus, tetapi outputnya berbeda dengan jenis penyimpanan kunci dan, untuk penyimpanan kunci eksternal, opsi konektivitasnya.  
Secara default, perintah ini menampilkan informasi tentang semua toko kunci khusus di akun dan Wilayah. Untuk menampilkan informasi tentang penyimpanan kunci khusus tertentu, gunakan `custom-key-store-id` parameter `custom-key-store-name` atau.  

```
aws kms describe-custom-key-stores \
    --custom-key-store-id cks-9876543210fedcba9
```
Output dari perintah ini mencakup rincian berguna tentang penyimpanan kunci eksternal termasuk status koneksi (`ConnectionState`). Jika status koneksi`FAILED`, output mencakup `ConnectionErrorCode` bidang yang menjelaskan masalah.  
Output:  

```
{
    "CustomKeyStores": [
        {
            "CustomKeyStoreId": "cks-9876543210fedcba9",
            "CustomKeyStoreName": "ExampleXKS",
            "ConnectionState": "CONNECTED",
            "CreationDate": "2022-12-02T07:48:55-07:00",
            "CustomKeyStoreType": "EXTERNAL_KEY_STORE",
            "XksProxyConfiguration": {
                "AccessKeyId": "ABCDE12345670EXAMPLE",
                "Connectivity": "PUBLIC_ENDPOINT",
                "UriEndpoint": "https://myproxy.xks.example.com",
                "UriPath": "/example-prefix/kms/xks/v1"
            }
        }
    ]
}
```
Untuk informasi selengkapnya, lihat [Melihat penyimpanan kunci eksternal](https://docs.aws.amazon.com/kms/latest/developerguide/view-xks-keystore.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
**Contoh 3: Untuk mendapatkan detail tentang penyimpanan kunci eksternal dengan konektivitas layanan titik akhir VPC**  
`describe-custom-key-store`Contoh berikut menampilkan rincian tentang penyimpanan kunci eksternal yang ditentukan. Perintahnya sama untuk semua jenis penyimpanan kunci khusus, tetapi outputnya berbeda dengan jenis penyimpanan kunci dan, untuk penyimpanan kunci eksternal, opsi konektivitasnya.  
Secara default, perintah ini menampilkan informasi tentang semua toko kunci khusus di akun dan Wilayah. Untuk menampilkan informasi tentang penyimpanan kunci khusus tertentu, gunakan `custom-key-store-id` parameter `custom-key-store-name` atau.  

```
aws kms describe-custom-key-stores \
    --custom-key-store-id cks-2234567890abcdef0
```
Output dari perintah ini mencakup rincian berguna tentang penyimpanan kunci eksternal termasuk status koneksi (`ConnectionState`). Jika status koneksi`FAILED`, output mencakup `ConnectionErrorCode` bidang yang menjelaskan masalah.  
Output:  

```
{
    "CustomKeyStores": [
        {
            "CustomKeyStoreId": "cks-3234567890abcdef0",
            "CustomKeyStoreName": "ExampleVPCExternalKeyStore",
            "ConnectionState": "CONNECTED",
            "CreationDate": "2022-12-22T07:48:55-07:00",
            "CustomKeyStoreType": "EXTERNAL_KEY_STORE",
            "XksProxyConfiguration": {
                "AccessKeyId": "ABCDE12345670EXAMPLE",
                "Connectivity": "VPC_ENDPOINT_SERVICE",
                "UriEndpoint": "https://myproxy-private.xks.example.com",
                "UriPath": "/kms/xks/v1",
                "VpcEndpointServiceName": "com.amazonaws.vpce.us-east-1.vpce-svc-example1"
            }
        }
    ]
}
```
Untuk informasi selengkapnya, lihat [Melihat penyimpanan kunci eksternal](https://docs.aws.amazon.com/kms/latest/developerguide/view-xks-keystore.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [DescribeCustomKeyStores](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/describe-custom-key-stores.html)di *Referensi AWS CLI Perintah*. 

### `describe-key`
<a name="kms_DescribeKey_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`describe-key`.

**AWS CLI**  
**Contoh 1: Untuk menemukan informasi rinci tentang kunci KMS**  
`describe-key`Contoh berikut mendapatkan informasi rinci tentang kunci AWS terkelola untuk Amazon S3 di akun contoh dan Wilayah. Anda dapat menggunakan perintah ini untuk menemukan detail tentang kunci AWS terkelola dan kunci yang dikelola pelanggan.  
Untuk menentukan kunci KMS, gunakan `key-id` parameter. Contoh ini menggunakan nilai nama alias, tetapi Anda dapat menggunakan ID kunci, ARN kunci, nama alias, atau alias ARN dalam perintah ini.  

```
aws kms describe-key \
    --key-id alias/aws/s3
```
Output:  

```
{
    "KeyMetadata": {
        "AWSAccountId": "846764612917",
        "KeyId": "b8a9477d-836c-491f-857e-07937918959b",
        "Arn": "arn:aws:kms:us-west-2:846764612917:key/b8a9477d-836c-491f-857e-07937918959b",
        "CurrentKeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6",
        "CreationDate": 2017-06-30T21:44:32.140000+00:00,
        "Enabled": true,
        "Description": "Default KMS key that protects my S3 objects when no other key is defined",
        "KeyUsage": "ENCRYPT_DECRYPT",
        "KeyState": "Enabled",
        "Origin": "AWS_KMS",
        "KeyManager": "AWS",
        "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT",
        "EncryptionAlgorithms": [
            "SYMMETRIC_DEFAULT"
        ]
    }
}
```
Untuk informasi selengkapnya, lihat [Melihat AWS kunci](https://docs.aws.amazon.com/kms/latest/developerguide/viewing-keys.html) *di Panduan Pengembang Layanan Manajemen Kunci*.  
**Contoh 2: Untuk mendapatkan detail tentang kunci KMS asimetris RSA**  
`describe-key`Contoh berikut mendapatkan informasi rinci tentang kunci KMS RSA asimetris yang digunakan untuk penandatanganan dan verifikasi.  

```
aws kms describe-key \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Output:  

```
{
    "KeyMetadata": {
        "AWSAccountId": "111122223333",
        "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
        "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "CreationDate": "2019-12-02T19:47:14.861000+00:00",
        "CustomerMasterKeySpec": "RSA_2048",
        "Enabled": false,
        "Description": "",
        "KeyState": "Disabled",
        "Origin": "AWS_KMS",
        "MultiRegion": false,
        "KeyManager": "CUSTOMER",
        "KeySpec": "RSA_2048",
        "KeyUsage": "SIGN_VERIFY",
        "SigningAlgorithms": [
            "RSASSA_PKCS1_V1_5_SHA_256",
            "RSASSA_PKCS1_V1_5_SHA_384",
            "RSASSA_PKCS1_V1_5_SHA_512",
            "RSASSA_PSS_SHA_256",
            "RSASSA_PSS_SHA_384",
            "RSASSA_PSS_SHA_512"
        ]
    }
}
```
**Contoh 3: Untuk mendapatkan detail tentang kunci replika Multi-wilayah**  
`describe-key`Contoh berikut mendapatkan metadata untuk kunci replika Multi-wilayah. Kunci Multi-region ini adalah kunci enkripsi simetris. Output dari `describe-key` perintah untuk setiap kunci Multi-region mengembalikan informasi tentang kunci utama dan semua replika nya.  

```
aws kms describe-key \
    --key-id arn:aws:kms:ap-northeast-1:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab
```
Output:  

```
{
    "KeyMetadata": {
        "MultiRegion": true,
        "AWSAccountId": "111122223333",
        "Arn": "arn:aws:kms:ap-northeast-1:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab",
        "CreationDate": "2021-06-28T21:09:16.114000+00:00",
        "CurrentKeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6",
        "Description": "",
        "Enabled": true,
        "KeyId": "mrk-1234abcd12ab34cd56ef1234567890ab",
        "KeyManager": "CUSTOMER",
        "KeyState": "Enabled",
        "KeyUsage": "ENCRYPT_DECRYPT",
        "Origin": "AWS_KMS",
        "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT",
        "EncryptionAlgorithms": [
            "SYMMETRIC_DEFAULT"
        ],
        "MultiRegionConfiguration": {
            "MultiRegionKeyType": "PRIMARY",
            "PrimaryKey": {
                "Arn": "arn:aws:kms:us-west-2:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab",
                "Region": "us-west-2"
            },
            "ReplicaKeys": [
                {
                    "Arn": "arn:aws:kms:eu-west-1:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab",
                    "Region": "eu-west-1"
                },
                {
                    "Arn": "arn:aws:kms:ap-northeast-1:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab",
                    "Region": "ap-northeast-1"
                },
                {
                    "Arn": "arn:aws:kms:sa-east-1:111122223333:key/mrk-1234abcd12ab34cd56ef1234567890ab",
                    "Region": "sa-east-1"
                }
            ]
        }
    }
}
```
**Contoh 4: Untuk mendapatkan detail tentang kunci HMAC KMS**  
`describe-key`Contoh berikut mendapatkan informasi rinci tentang kunci HMAC KMS.  

```
aws kms describe-key \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Output:  

```
{
    "KeyMetadata": {
        "AWSAccountId": "123456789012",
        "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
        "Arn": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "CreationDate": "2022-04-03T22:23:10.194000+00:00",
        "Enabled": true,
        "Description": "Test key",
        "KeyUsage": "GENERATE_VERIFY_MAC",
        "KeyState": "Enabled",
        "Origin": "AWS_KMS",
        "KeyManager": "CUSTOMER",
        "CustomerMasterKeySpec": "HMAC_256",
        "MacAlgorithms": [
            "HMAC_SHA_256"
        ],
        "MultiRegion": false
    }
}
```
+  Untuk detail API, lihat [DescribeKey](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/describe-key.html)di *Referensi AWS CLI Perintah*. 

### `disable-key-rotation`
<a name="kms_DisableKeyRotation_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`disable-key-rotation`.

**AWS CLI**  
**Untuk menonaktifkan rotasi otomatis tombol KMS**  
`disable-key-rotation`Contoh berikut menonaktifkan rotasi otomatis kunci KMS yang dikelola pelanggan. Untuk mengaktifkan kembali rotasi otomatis, gunakan `enable-key-rotation` perintah.  

```
aws kms disable-key-rotation \
    --key-id arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
```
Perintah ini tidak menghasilkan output. Untuk memverifikasi bahwa rotasi otomatis dinonaktifkan untuk kunci KMS, gunakan `get-key-rotation-status` perintah.  
Untuk informasi selengkapnya, lihat [Memutar kunci](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [DisableKeyRotation](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/disable-key-rotation.html)di *Referensi AWS CLI Perintah*. 

### `disable-key`
<a name="kms_DisableKey_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`disable-key`.

**AWS CLI**  
**Untuk menonaktifkan sementara kunci KMS**  
`disable-key`Perintah berikut menonaktifkan kunci KMS yang dikelola pelanggan. Untuk mengaktifkan kembali kunci KMS, gunakan perintah. `enable-key`  

```
aws kms disable-key \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Perintah ini tidak menghasilkan output.  
Untuk informasi selengkapnya, lihat [Mengaktifkan dan Menonaktifkan Kunci di Panduan](https://docs.aws.amazon.com/kms/latest/developerguide/enabling-keys.html) Pengembang *Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [DisableKey](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/disable-key.html)di *Referensi AWS CLI Perintah*. 

### `disconnect-custom-key-store`
<a name="kms_DisconnectCustomKeyStore_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`disconnect-custom-key-store`.

**AWS CLI**  
**Untuk memutuskan sambungan toko kunci kustom**  
`disconnect-custom-key-store`Contoh berikut memutus penyimpanan kunci kustom dari klaster AWS CloudHSM. Anda mungkin memutuskan penyimpanan kunci untuk memecahkan masalah, memperbarui pengaturannya, atau untuk mencegah kunci KMS di keystore digunakan dalam operasi kriptografi.  
Perintah ini sama untuk semua toko kunci khusus, termasuk toko kunci AWS CloudHSM dan toko kunci eksternal.  
Sebelum menjalankan perintah ini, ganti contoh ID penyimpanan kunci kustom dengan yang valid.  

```
$ aws kms disconnect-custom-key-store \
    --custom-key-store-id cks-1234567890abcdef0
```
Perintah ini tidak menghasilkan keluaran. verifikasi bahwa perintah itu efektif, gunakan perintah. `describe-custom-key-stores`  
*Untuk informasi selengkapnya tentang memutuskan sambungan AWS penyimpanan kunci CloudHSM, [lihat Menyambungkan dan memutuskan penyimpanan kunci AWS CloudHSM di Panduan Pengembang Layanan Manajemen](https://docs.aws.amazon.com/kms/latest/developerguide/disconnect-keystore.html) Kunci.AWS *  
Untuk informasi selengkapnya tentang memutuskan penyimpanan kunci eksternal, lihat [Menghubungkan dan memutuskan penyimpanan kunci eksternal di Panduan](https://docs.aws.amazon.com/kms/latest/developerguide/xks-connect-disconnect.html) *Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [DisconnectCustomKeyStore](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/disconnect-custom-key-store.html)di *Referensi AWS CLI Perintah*. 

### `enable-key-rotation`
<a name="kms_EnableKeyRotation_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`enable-key-rotation`.

**AWS CLI**  
**Untuk mengaktifkan rotasi otomatis tombol KMS**  
`enable-key-rotation`Contoh berikut memungkinkan rotasi otomatis kunci KMS yang dikelola pelanggan dengan periode rotasi 180 hari. Kunci KMS akan diputar satu tahun (perkiraan 365 hari) dari tanggal perintah ini selesai dan setiap tahun setelahnya.  
`--key-id`Parameter mengidentifikasi kunci KMS. Contoh ini menggunakan nilai ARN kunci, tetapi Anda dapat menggunakan ID kunci atau ARN dari kunci `--rotation-period-in-days` KMS.Parameter menentukan jumlah hari antara setiap tanggal rotasi. Tentukan nilai antara 90 dan 2560 hari. Jika tidak ada nilai yang ditentukan, nilai default adalah 365 hari.  

```
aws kms enable-key-rotation \
    --key-id arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab \
    --rotation-period-in-days 180
```
Perintah ini tidak menghasilkan output. Untuk memverifikasi bahwa kunci KMS diaktifkan, gunakan `get-key-rotation-status` perintah.  
Untuk informasi selengkapnya, lihat [Memutar kunci](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [EnableKeyRotation](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/enable-key-rotation.html)di *Referensi AWS CLI Perintah*. 

### `enable-key`
<a name="kms_EnableKey_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`enable-key`.

**AWS CLI**  
**Untuk mengaktifkan kunci KMS**  
`enable-key`Contoh berikut memungkinkan kunci yang dikelola pelanggan. Anda dapat menggunakan perintah seperti ini untuk mengaktifkan kunci KMS yang Anda nonaktifkan sementara dengan menggunakan `disable-key` perintah. Anda juga dapat menggunakannya untuk mengaktifkan kunci KMS yang dinonaktifkan karena dijadwalkan untuk dihapus dan penghapusan dibatalkan.  
Untuk menentukan kunci KMS, gunakan `key-id` parameter. Contoh ini menggunakan nilai ID kunci, tetapi Anda dapat menggunakan ID kunci atau nilai ARN kunci dalam perintah ini.  
Sebelum menjalankan perintah ini, ganti ID kunci contoh dengan yang valid.  

```
aws kms enable-key \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Perintah ini tidak menghasilkan output. Untuk memverifikasi bahwa kunci KMS diaktifkan, gunakan `describe-key` perintah. Lihat nilai `KeyState` dan `Enabled` bidang dalam `describe-key` output.  
Untuk informasi selengkapnya, lihat [Mengaktifkan dan Menonaktifkan Kunci di Panduan](https://docs.aws.amazon.com/kms/latest/developerguide/enabling-keys.html) Pengembang *Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [EnableKey](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/enable-key.html)di *Referensi AWS CLI Perintah*. 

### `encrypt`
<a name="kms_Encrypt_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`encrypt`.

**AWS CLI**  
**Contoh 1: Untuk mengenkripsi isi file di Linux atau macOS**  
`encrypt`Perintah berikut menunjukkan cara yang disarankan untuk mengenkripsi data dengan CLI AWS .  

```
aws kms encrypt \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --plaintext fileb://ExamplePlaintextFile \
    --output text \
    --query CiphertextBlob | base64 \
    --decode > ExampleEncryptedFile
```
Perintah melakukan beberapa hal:  
Menggunakan `--plaintext` parameter untuk menunjukkan data yang akan dienkripsi. Nilai parameter ini harus Base64-encode.Nilai `plaintext` parameter harus base64-dikodekan, atau Anda harus menggunakan awalan`fileb://`, yang memberitahu AWS CLI untuk membaca data biner dari file.Jika file tidak dalam direktori saat ini, ketik path lengkap ke file. Misalnya: `fileb:///var/tmp/ExamplePlaintextFile` atau `fileb://C:\Temp\ExamplePlaintextFile`. [Untuk informasi lebih lanjut tentang membaca nilai parameter AWS CLI dari file, lihat [Memuat Parameter dari File](https://docs.aws.amazon.com/cli/latest/userguide/cli-using-param.html#cli-using-param-file) di *Panduan Pengguna Antarmuka Baris AWS Perintah* dan [Praktik Terbaik untuk Parameter File Lokal](https://blogs.aws.amazon.com/cli/post/TxLWWN1O25V1HE/Best-Practices-for-Local-File-Parameters) di Blog Alat Baris AWS Perintah.Menggunakan `--output` dan `--query` parameter untuk mengontrol output perintah.Parameter ini mengekstrak data terenkripsi, yang disebut *ciphertext*, dari output perintah.Untuk informasi lebih lanjut tentang mengontrol output, lihat Mengontrol Perintah Output](https://docs.aws.amazon.com/cli/latest/userguide/controlling-output.html) dalam *Panduan Pengguna Antarmuka Baris AWS Perintah.Menggunakan* `base64` utilitas untuk memecahkan kode output yang diekstraksi ke dalam data biner.Ciphertext yang dikembalikan oleh perintah yang berhasil adalah teks yang dikodekan base64. `encrypt` Anda harus memecahkan kode teks ini sebelum Anda dapat menggunakan AWS CLI untuk mendekripsi itu.Menyimpan ciphertext biner ke file.Bagian terakhir dari perintah `> ExampleEncryptedFile` () menyimpan ciphertext biner ke file untuk membuat dekripsi lebih mudah. Untuk contoh perintah yang menggunakan AWS CLI untuk mendekripsi data, lihat contoh dekripsi.  
**Contoh 2: Menggunakan AWS CLI untuk mengenkripsi data pada Windows**  
Contoh ini sama dengan yang sebelumnya, kecuali bahwa ia menggunakan `certutil` alat sebagai gantinya`base64`. Prosedur ini membutuhkan dua perintah, seperti yang ditunjukkan pada contoh berikut.  

```
aws kms encrypt \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --plaintext fileb://ExamplePlaintextFile \
    --output text \
    --query CiphertextBlob > C:\Temp\ExampleEncryptedFile.base64

certutil -decode C:\Temp\ExampleEncryptedFile.base64 C:\Temp\ExampleEncryptedFile
```
**Contoh 3: Mengenkripsi dengan tombol KMS asimetris**  
`encrypt`Perintah berikut menunjukkan cara mengenkripsi plaintext dengan kunci KMS asimetris. parameter `--encryption-algorithm` diperlukan. Seperti pada semua perintah `encrypt` CLI, `plaintext` parameter harus dikodekan base64, atau Anda harus menggunakan `fileb://` awalan, yang memberi tahu AWS CLI untuk membaca data biner dari file.  

```
aws kms encrypt \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --encryption-algorithm RSAES_OAEP_SHA_256 \
    --plaintext fileb://ExamplePlaintextFile \
    --output text \
    --query CiphertextBlob | base64 \
    --decode > ExampleEncryptedFile
```
Perintah ini tidak menghasilkan output.  
+  Untuk detail API, lihat [Enkripsi](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/encrypt.html) di *Referensi AWS CLI Perintah*. 

### `generate-data-key-pair-without-plaintext`
<a name="kms_GenerateDataKeyPairWithoutPlaintext_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`generate-data-key-pair-without-plaintext`.

**AWS CLI**  
**Untuk menghasilkan ECC NIST P384 asymmetric data key pair**  
`generate-data-key-pair-without-plaintext`Contoh berikut meminta key pair ECC NIST P384 untuk digunakan di luar. AWS  
Perintah mengembalikan kunci publik plaintext dan salinan kunci pribadi yang dienkripsi di bawah kunci KMS yang ditentukan. Itu tidak mengembalikan kunci pribadi plaintext. Anda dapat dengan aman menyimpan kunci pribadi terenkripsi dengan data terenkripsi, dan memanggil AWS KMS untuk mendekripsi kunci pribadi saat Anda perlu menggunakannya.  
Untuk meminta ECC NIST P384 asymmetric data key pair, gunakan parameter `key-pair-spec` dengan nilai. `ECC_NIST_P384`  
Kunci KMS yang Anda tentukan harus berupa kunci KMS enkripsi simetris, yaitu kunci KMS dengan nilai. `KeySpec` `SYMMETRIC_DEFAULT`  
CATATAN: Nilai-nilai dalam output dari contoh ini terpotong untuk tampilan.  

```
aws kms generate-data-key-pair-without-plaintext \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --key-pair-spec ECC_NIST_P384
```
Output:  

```
{
    "PrivateKeyCiphertextBlob": "AQIDAHi6LtupRpdKl2aJTzkK6FbhOtQkMlQJJH3PdtHvS/y+hAFFxmiD134doUDzMGmfCEtcAAAHaTCCB2UGCSqGSIb3DQEHBqCCB1...",
    "PublicKey": "MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEA3A3eGMyPrvSn7+LdlJE1oUoQV5HpEuHAVbdOyND+NmYDH/mL1OSIEuLrcdZ5hrMH4pk83r40l...",
    "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6",
    "KeyPairSpec": "ECC_NIST_P384"
}
```
The `PublicKey` dan dikembalikan dalam `PrivateKeyCiphertextBlob` format yang dikodekan base64.  
Untuk informasi selengkapnya, lihat [Pasangan kunci data](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-key-pairs) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [GenerateDataKeyPairWithoutPlaintext](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/generate-data-key-pair-without-plaintext.html)di *Referensi AWS CLI Perintah*. 

### `generate-data-key-pair`
<a name="kms_GenerateDataKeyPair_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`generate-data-key-pair`.

**AWS CLI**  
**Untuk menghasilkan sebuah 2048-bit RSA asymmetric data key pair**  
`generate-data-key-pair`Contoh berikut meminta 2048-bit RSA asymmetric data key pair untuk digunakan di luar. AWS Perintah mengembalikan kunci publik plaintext dan kunci pribadi plaintext untuk segera digunakan dan dihapus, dan salinan kunci pribadi yang dienkripsi di bawah kunci KMS yang ditentukan. Anda dapat dengan aman menyimpan kunci pribadi terenkripsi dengan data terenkripsi.  
Untuk meminta 2048-bit RSA asymmetric data key pair, gunakan parameter `key-pair-spec` dengan nilai. `RSA_2048`  
Kunci KMS yang Anda tentukan harus berupa kunci KMS enkripsi simetris, yaitu kunci KMS dengan nilai. `KeySpec` `SYMMETRIC_DEFAULT`  
CATATAN: Nilai-nilai dalam output dari contoh ini terpotong untuk tampilan.  

```
aws kms generate-data-key-pair \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --key-pair-spec RSA_2048
```
Output:  

```
{
    "PrivateKeyCiphertextBlob": "AQIDAHi6LtupRpdKl2aJTzkK6FbhOtQkMlQJJH3PdtHvS/y+hAFFxmiD134doUDzMGmfCEtcAAAHaTCCB2UGCSqGSIb3DQEHBqCCB1...",
    "PrivateKeyPlaintext": "MIIG/QIBADANBgkqhkiG9w0BAQEFAASCBucwggbjAgEAAoIBgQDcDd4YzI+u9Kfv4t2UkTWhShBXkekS4cBVt07I0P42ZgMf+YvU5IgS4ut...",
    "PublicKey": "MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEA3A3eGMyPrvSn7+LdlJE1oUoQV5HpEuHAVbdOyND+NmYDH/mL1OSIEuLrcdZ5hrMH4pk83r40l...",
    "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6"
    "KeyPairSpec": "RSA_2048"
}
```
The`PublicKey`,`PrivateKeyPlaintext`, dan dikembalikan dalam `PrivateKeyCiphertextBlob` format yang dikodekan base64.  
Untuk informasi selengkapnya, lihat [Pasangan kunci data](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-key-pairs) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [GenerateDataKeyPair](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/generate-data-key-pair.html)di *Referensi AWS CLI Perintah*. 

### `generate-data-key-without-plaintext`
<a name="kms_GenerateDataKeyWithoutPlaintext_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`generate-data-key-without-plaintext`.

**AWS CLI**  
**Untuk menghasilkan kunci data simetris 256-bit tanpa kunci plaintext**  
`generate-data-key-without-plaintext`Contoh berikut meminta salinan terenkripsi dari kunci data simetris 256-bit untuk digunakan di luar. AWS Anda dapat memanggil AWS KMS untuk mendekripsi kunci data saat Anda siap menggunakannya.  
Untuk meminta kunci data 256-bit, gunakan `key-spec` parameter dengan nilai. `AES_256` Untuk meminta kunci data 128-bit, gunakan `key-spec` parameter dengan nilai. `AES_128` Untuk semua panjang kunci data lainnya, gunakan `number-of-bytes` parameter.  
Kunci KMS yang Anda tentukan harus berupa kunci KMS enkripsi simetris, yaitu kunci KMS dengan nilai spesifikasi kunci SYMMETRIC\$1DEFAULT.  

```
aws kms generate-data-key-without-plaintext \
    --key-id "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" \
    --key-spec AES_256
```
Output:  

```
{
    "CiphertextBlob": "AQEDAHjRYf5WytIc0C857tFSnBaPn2F8DgfmThbJlGfR8P3WlwAAAH4wfAYJKoZIhvcNAQcGoG8wbQIBADBoBgkqhkiG9w0BBwEwHgYJYIZIAWUDBAEuMBEEDEFogL",
    "KeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6"
}
```
`CiphertextBlob`(Kunci data terenkripsi) dikembalikan dalam format yang dikodekan base64.  
Untuk informasi selengkapnya, lihat [Kunci data](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [GenerateDataKeyWithoutPlaintext](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/generate-data-key-without-plaintext.html)di *Referensi AWS CLI Perintah*. 

### `generate-data-key`
<a name="kms_GenerateDataKey_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`generate-data-key`.

**AWS CLI**  
**Contoh 1: Untuk menghasilkan kunci data simetris 256-bit**  
`generate-data-key`Contoh berikut meminta kunci data simetris 256-bit untuk digunakan di luar. AWS Perintah mengembalikan kunci data plaintext untuk segera digunakan dan dihapus, dan salinan kunci data yang dienkripsi di bawah kunci KMS yang ditentukan. Anda dapat dengan aman menyimpan kunci data terenkripsi dengan data terenkripsi.  
Untuk meminta kunci data 256-bit, gunakan `key-spec` parameter dengan nilai. `AES_256` Untuk meminta kunci data 128-bit, gunakan `key-spec` parameter dengan nilai. `AES_128` Untuk semua panjang kunci data lainnya, gunakan `number-of-bytes` parameter.  
Kunci KMS yang Anda tentukan harus berupa kunci KMS enkripsi simetris, yaitu kunci KMS dengan nilai spesifikasi kunci SYMMETRIC\$1DEFAULT.  

```
aws kms generate-data-key \
    --key-id alias/ExampleAlias \
    --key-spec AES_256
```
Output:  

```
{
    "Plaintext": "VdzKNHGzUAzJeRBVY+uUmofUGGiDzyB3+i9fVkh3piw=",
    "KeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6",
    "CiphertextBlob": "AQEDAHjRYf5WytIc0C857tFSnBaPn2F8DgfmThbJlGfR8P3WlwAAAH4wfAYJKoZIhvcNAQcGoG8wbQIBADBoBgkqhkiG9w0BBwEwHgYJYIZIAWUDBAEuMBEEDEFogLqPWZconQhwHAIBEIA7d9AC7GeJJM34njQvg4Wf1d5sw0NIo1MrBqZa+YdhV8MrkBQPeac0ReRVNDt9qleAt+SHgIRF8P0H+7U="
}
```
`Plaintext`(Kunci data teks biasa) dan `CiphertextBlob` (kunci data terenkripsi) dikembalikan dalam format yang disandikan base64.  
Untuk informasi selengkapnya, lihat [Kunci data](https://docs.aws.amazon.com/kms/latest/developerguide/data-keys.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*. **Contoh 2: Untuk menghasilkan kunci data simetris 512-bit**  
`generate-data-key`Contoh berikut meminta kunci data simetris 512-bit untuk enkripsi dan dekripsi. Perintah mengembalikan kunci data plaintext untuk segera digunakan dan dihapus, dan salinan kunci data yang dienkripsi di bawah kunci KMS yang ditentukan. Anda dapat dengan aman menyimpan kunci data terenkripsi dengan data terenkripsi.  
Untuk meminta panjang kunci selain 128 atau 256 bit, gunakan `number-of-bytes` parameter. Untuk meminta kunci data 512-bit, contoh berikut menggunakan `number-of-bytes` parameter dengan nilai 64 (byte).  
Kunci KMS yang Anda tentukan harus berupa kunci KMS enkripsi simetris, yaitu kunci KMS dengan nilai spesifikasi kunci SYMMETRIC\$1DEFAULT.  
CATATAN: Nilai-nilai dalam output dari contoh ini terpotong untuk tampilan.  

```
aws kms generate-data-key \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --number-of-bytes 64
```
Output:  

```
{
    "CiphertextBlob": "AQIBAHi6LtupRpdKl2aJTzkK6FbhOtQkMlQJJH3PdtHvS/y+hAEnX/QQNmMwDfg2korNMEc8AAACaDCCAmQGCSqGSIb3DQEHBqCCAlUwggJRAgEAMIICSgYJKoZ...",
    "Plaintext": "ty8Lr0Bk6OF07M2BWt6qbFdNB+G00ZLtf5MSEb4al3R2UKWGOp06njAwy2n72VRm2m7z/Pm9Wpbvttz6a4lSo9hgPvKhZ5y6RTm4OovEXiVfBveyX3DQxDzRSwbKDPk/...",
    "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6"
}
```
`Plaintext`(Kunci data teks biasa) dan `CiphertextBlob` (kunci data terenkripsi) dikembalikan dalam format yang disandikan base64.  
Untuk informasi selengkapnya, lihat [Kunci data](https://docs.aws.amazon.com/kms/latest/developerguide/data-keys.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [GenerateDataKey](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/generate-data-key.html)di *Referensi AWS CLI Perintah*. 

### `generate-mac`
<a name="kms_GenerateMac_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`generate-mac`.

**AWS CLI**  
**Contoh 1: Untuk menghasilkan HMAC untuk pesan**  
`generate-mac`Perintah berikut menghasilkan HMAC untuk pesan, kunci HMAC KMS, dan algoritma MAC. Algoritma harus didukung oleh kunci HMAC KMS yang ditentukan.  
Di AWS CLI v2, nilai `message` parameter harus dikodekan Base64. Atau, Anda dapat menyimpan pesan dalam file dan menggunakan `fileb://` awalan, yang memberitahu AWS CLI untuk membaca data biner dari file.  
Sebelum menjalankan perintah ini, ganti ID kunci contoh dengan ID kunci yang valid dari AWS akun Anda. ID kunci harus mewakili kunci HMAC KMS dengan penggunaan kunci. `GENERATE_VERIFY_MAC`  

```
msg=(echo 'Hello World' | base64)

aws kms generate-mac \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --message fileb://Message \
    --mac-algorithm HMAC_SHA_384
```
Output:  

```
{
    "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "Mac": "<HMAC_TAG>",
    "MacAlgorithm": "HMAC_SHA_384"
}
```
Untuk informasi selengkapnya tentang menggunakan kunci KMS HMAC di AWS KMS, lihat [kunci HMAC di AWS KMS di Panduan Pengembang](https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html) Layanan Manajemen *AWS Kunci*.  
**Contoh 2: Untuk menyimpan HMAC dalam file (Linux dan macOS)**  
`generate-mac`Contoh berikut menghasilkan HMAC untuk pesan singkat yang disimpan dalam file lokal. Perintah juga mendapatkan `Mac` properti dari respons, Base64-mendekodekannya dan menyimpannya dalam file. ExampleMac Anda dapat menggunakan file MAC dalam `verify-mac` perintah yang memverifikasi MAC.  
`generate-mac`Perintah ini memerlukan pesan yang disandikan Base64 dan algoritma MAC yang didukung oleh kunci HMAC KMS Anda. Untuk mendapatkan algoritma MAC yang didukung oleh tombol KMS Anda, gunakan perintah. `describe-key`  
Sebelum menjalankan perintah ini, ganti ID kunci contoh dengan ID kunci yang valid dari AWS akun Anda. ID kunci harus mewakili kunci KMS asimetris dengan penggunaan kunci GENERATE\$1VERIFY\$1MAC.  

```
echo 'hello world' | base64 > EncodedMessage

aws kms generate-mac \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --message fileb://EncodedMessage \
    --mac-algorithm HMAC_SHA_384 \
    --output text \
    --query Mac | base64 --decode > ExampleMac
```
Perintah ini tidak menghasilkan output. Contoh ini mengekstrak `Mac` properti output dan menyimpannya dalam file.  
Untuk informasi selengkapnya tentang menggunakan kunci KMS HMAC di AWS KMS, lihat [kunci HMAC di AWS KMS di Panduan Pengembang](https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html) Layanan Manajemen *AWS Kunci*.  
+  Untuk detail API, lihat [GenerateMac](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/generate-mac.html)di *Referensi AWS CLI Perintah*. 

### `generate-random`
<a name="kms_GenerateRandom_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`generate-random`.

**AWS CLI**  
**Contoh 1: Untuk menghasilkan string byte acak 256-bit (Linux atau macOS)**  
`generate-random`Contoh berikut menghasilkan 256-bit (32-byte), string byte acak yang dikodekan base64. Contoh menerjemahkan string byte dan menyimpannya dalam file acak.  
Ketika Anda menjalankan perintah ini, Anda harus menggunakan `number-of-bytes` parameter untuk menentukan panjang nilai acak dalam byte.  
Anda tidak menentukan kunci KMS ketika Anda menjalankan perintah ini. String byte acak tidak terkait dengan kunci KMS apa pun.  
Secara default, AWS KMS menghasilkan nomor acak. Namun, jika Anda menentukan [penyimpanan kunci khusus](https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html), string byte acak dihasilkan di klaster AWS CloudHSM yang terkait dengan penyimpanan kunci kustom.  
Contoh ini menggunakan parameter dan nilai berikut:  
Ini menggunakan `--number-of-bytes` parameter yang diperlukan dengan nilai `32` untuk meminta string 32-byte (256-bit). Ini menggunakan `--output` parameter dengan nilai untuk `text` mengarahkan AWS CLI untuk mengembalikan output sebagai teks, bukan JSON.Ini menggunakan untuk mengekstrak nilai `Plaintext` properti dari response.It pipa (\$1) output dari perintah `--query parameter` ke `base64` utilitas, yang menerjemahkan output yang diekstraksi.Ini menggunakan operator pengalihan (>) untuk menyimpan string byte yang diterjemahkan ke file. Ini menggunakan operator pengalihan (>) `ExampleRandom` untuk menyimpan ciphertext biner ke file.  

```
aws kms generate-random \
    --number-of-bytes 32 \
    --output text \
    --query Plaintext | base64 --decode > ExampleRandom
```
Perintah ini tidak menghasilkan output.  
Untuk informasi selengkapnya, lihat [GenerateRandom](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateRandom.html)di *Referensi API Layanan Manajemen AWS Kunci*.  
**Contoh 2: Untuk menghasilkan nomor acak 256-bit (Windows Command Prompt)**  
Contoh berikut menggunakan `generate-random` perintah untuk menghasilkan string byte acak 256-bit (32-byte) yang dikodekan base64. Contoh menerjemahkan string byte dan menyimpannya dalam file acak. Contoh ini sama dengan contoh sebelumnya, kecuali bahwa ia menggunakan `certutil` utilitas di Windows untuk base64-decode string byte acak sebelum menyimpannya dalam file.  
Pertama, buat string byte acak yang dikodekan base64 dan simpan dalam file sementara,. `ExampleRandom.base64`  

```
aws kms generate-random \
    --number-of-bytes 32 \
    --output text \
    --query Plaintext > ExampleRandom.base64
```
Karena output dari `generate-random` perintah disimpan dalam file, contoh ini tidak menghasilkan output.  
Sekarang gunakan `certutil -decode` perintah untuk memecahkan kode string byte yang dikodekan base64 dalam file. `ExampleRandom.base64` Kemudian, ia menyimpan string byte yang diterjemahkan dalam file. `ExampleRandom`  

```
certutil -decode ExampleRandom.base64 ExampleRandom
```
Output:  

```
Input Length = 18
Output Length = 12
CertUtil: -decode command completed successfully.
```
Untuk informasi selengkapnya, lihat [GenerateRandom](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateRandom.html)di *Referensi API Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [GenerateRandom](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/generate-random.html)di *Referensi AWS CLI Perintah*. 

### `get-key-policy`
<a name="kms_GetKeyPolicy_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`get-key-policy`.

**AWS CLI**  
**Untuk menyalin kebijakan kunci dari satu kunci KMS ke kunci KMS lainnya**  
`get-key-policy`Contoh berikut mendapatkan kebijakan kunci dari satu kunci KMS dan menyimpannya dalam file teks. Kemudian, itu menggantikan kebijakan kunci KMS yang berbeda menggunakan file teks sebagai input kebijakan.  
Karena `--policy` parameter `put-key-policy` membutuhkan string, Anda harus menggunakan `--output text` opsi untuk mengembalikan output sebagai string teks bukan JSON.  

```
aws kms get-key-policy \
    --policy-name default \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --query Policy \
    --output text > policy.txt

aws kms put-key-policy \
    --policy-name default \
    --key-id 0987dcba-09fe-87dc-65ba-ab0987654321 \
    --policy file://policy.txt
```
Perintah ini tidak menghasilkan output.  
Untuk informasi selengkapnya, lihat [PutKeyPolicy](https://docs.aws.amazon.com/kms/latest/APIReference/API_PutKeyPolicy.html)di *Referensi API AWS KMS*.  
+  Untuk detail API, lihat [GetKeyPolicy](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/get-key-policy.html)di *Referensi AWS CLI Perintah*. 

### `get-key-rotation-status`
<a name="kms_GetKeyRotationStatus_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`get-key-rotation-status`.

**AWS CLI**  
**Untuk mengambil status rotasi untuk kunci KMS.**  
`get-key-rotation-status`Contoh berikut mengembalikan informasi tentang status rotasi kunci KMS yang ditentukan, termasuk apakah rotasi otomatis diaktifkan, periode rotasi, dan tanggal rotasi terjadwal berikutnya. Anda dapat menggunakan perintah ini pada kunci KMS yang dikelola pelanggan dan kunci KMS yang AWS dikelola. Namun, semua kunci KMS yang AWS dikelola secara otomatis diputar setiap tahun.  

```
aws kms get-key-rotation-status \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Output:  

```
{
    "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
    "KeyRotationEnabled": true,
    "NextRotationDate": "2024-02-14T18:14:33.587000+00:00",
    "RotationPeriodInDays": 365
}
```
Untuk informasi selengkapnya, lihat [Memutar kunci](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [GetKeyRotationStatus](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/get-key-rotation-status.html)di *Referensi AWS CLI Perintah*. 

### `get-parameters-for-import`
<a name="kms_GetParametersForImport_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`get-parameters-for-import`.

**AWS CLI**  
**Untuk mendapatkan item yang diperlukan untuk mengimpor materi kunci ke kunci KMS**  
`get-parameters-for-import`Contoh berikut mendapatkan kunci publik dan token impor yang Anda butuhkan untuk mengimpor materi kunci ke kunci KMS. Saat Anda menggunakan `import-key-material` perintah, pastikan untuk menggunakan token impor dan materi kunci yang dienkripsi oleh kunci publik yang dikembalikan dalam perintah yang sama`get-parameters-for-import`. Juga, algoritma pembungkus yang Anda tentukan dalam perintah ini harus menjadi salah satu yang Anda gunakan untuk mengenkripsi materi kunci dengan kunci publik.  
Untuk menentukan kunci KMS, gunakan `key-id` parameter. Contoh ini menggunakan ID kunci, tetapi Anda dapat menggunakan ID kunci atau kunci ARN dalam perintah ini.  

```
aws kms get-parameters-for-import \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --wrapping-algorithm RSAES_OAEP_SHA_256 \
    --wrapping-key-spec RSA_2048
```
Output:  

```
{
    "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "PublicKey": "<public key base64 encoded data>",
    "ImportToken": "<import token base64 encoded data>",
    "ParametersValidTo": 1593893322.32
}
```
Untuk informasi selengkapnya, lihat [Mengunduh kunci publik dan token impor](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-get-public-key-and-token.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [GetParametersForImport](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/get-parameters-for-import.html)di *Referensi AWS CLI Perintah*. 

### `get-public-key`
<a name="kms_GetPublicKey_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`get-public-key`.

**AWS CLI**  
**Contoh 1: Untuk mengunduh kunci publik dari kunci KMS asimetris**  
`get-public-key`Contoh berikut mengunduh kunci publik dari kunci KMS asimetris.  
Selain mengembalikan kunci publik, output mencakup informasi yang Anda butuhkan untuk menggunakan kunci publik dengan aman di luar AWS KMS, termasuk penggunaan kunci dan algoritma enkripsi yang didukung.  

```
aws kms get-public-key \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Output:  

```
{
    "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "PublicKey": "jANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAl5epvg1/QtJhxSi2g9SDEVg8QV/...",
    "CustomerMasterKeySpec": "RSA_4096",
    "KeyUsage": "ENCRYPT_DECRYPT",
    "EncryptionAlgorithms": [
        "RSAES_OAEP_SHA_1",
        "RSAES_OAEP_SHA_256"
    ]
}
```
Untuk informasi selengkapnya tentang penggunaan kunci KMS asimetris di AWS KMS, lihat [Kunci asimetris di AWS KMS di Panduan Pengembang](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) Layanan Manajemen *AWS Kunci*. **Contoh 2: Untuk mengonversi kunci publik ke format DER (Linux dan macOS)**  
`get-public-key`Contoh berikut mengunduh kunci publik dari kunci KMS asimetris dan menyimpannya dalam file DER.  
Saat Anda menggunakan `get-public-key` perintah di AWS CLI, ia mengembalikan kunci publik X.509 yang dikodekan DER yang dikodekan oleh Base64. Contoh ini mendapatkan nilai `PublicKey` properti sebagai teks. Ini Base64-mendekode `PublicKey` dan menyimpannya dalam file. `public_key.der` `output`Parameter mengembalikan output sebagai teks, bukan JSON. `--query`Parameter hanya mendapatkan `PublicKey` properti, bukan properti yang Anda butuhkan untuk menggunakan kunci publik dengan aman di luar AWS KMS.  
Sebelum menjalankan perintah ini, ganti ID kunci contoh dengan ID kunci yang valid dari AWS akun Anda.  

```
aws kms get-public-key \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --output text \
    --query PublicKey | base64 --decode > public_key.der
```
Perintah ini tidak menghasilkan output.  
Untuk informasi selengkapnya tentang penggunaan kunci KMS asimetris di AWS KMS, lihat [Kunci asimetris di AWS KMS di Panduan Pengembang](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) Layanan Manajemen *AWS Kunci*.  
+  Untuk detail API, lihat [GetPublicKey](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/get-public-key.html)di *Referensi AWS CLI Perintah*. 

### `import-key-material`
<a name="kms_ImportKeyMaterial_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`import-key-material`.

**AWS CLI**  
**Untuk mengimpor materi kunci ke kunci KMS**  
`import-key-material`Contoh berikut mengunggah materi kunci ke kunci KMS yang dibuat tanpa materi kunci. Status kunci dari kunci KMS harus`PendingImport`.  
Perintah ini menggunakan materi kunci yang Anda enkripsi dengan kunci publik yang dikembalikan `get-parameters-for-import` perintah. Ini juga menggunakan token impor dari `get-parameters-for-import` perintah yang sama.  
`expiration-model`Parameter menunjukkan bahwa bahan utama secara otomatis kedaluwarsa pada tanggal dan waktu yang ditentukan oleh `valid-to` parameter. Ketika materi kunci kedaluwarsa, AWS KMS menghapus materi kunci, status kunci kunci KMS berubah menjadi `Pending import` dan kunci KMS menjadi tidak dapat digunakan. Untuk mengembalikan kunci KMS, Anda harus mengimpor ulang materi kunci yang sama. Untuk menggunakan bahan kunci yang berbeda, Anda harus membuat kunci KMS baru.  
Sebelum menjalankan perintah ini, ganti contoh ID kunci dengan ID kunci yang valid atau ARN kunci dari akun Anda AWS .  

```
aws kms import-key-material \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --encrypted-key-material fileb://EncryptedKeyMaterial.bin \
    --import-token fileb://ImportToken.bin \
    --expiration-model KEY_MATERIAL_EXPIRES \
    --valid-to 2021-09-21T19:00:00Z
```
Output:  

```
{
    "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
    "KeyMaterialId": "0b7fd7ddbac6eef27907413567cad8c810e2883dc8a7534067a82ee1142fc1e6"
}
```
Untuk informasi selengkapnya tentang mengimpor materi utama, lihat [Mengimpor Materi Utama](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) di Panduan *Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [ImportKeyMaterial](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/import-key-material.html)di *Referensi AWS CLI Perintah*. 

### `list-aliases`
<a name="kms_ListAliases_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`list-aliases`.

**AWS CLI**  
**Contoh 1: Untuk mencantumkan semua alias di AWS akun dan Wilayah**  
Contoh berikut menggunakan `list-aliases` perintah untuk daftar semua alias di Wilayah default AWS akun. Outputnya mencakup alias yang terkait dengan kunci KMS AWS terkelola dan kunci KMS yang dikelola pelanggan.  

```
aws kms list-aliases
```
Output:  

```
{
    "Aliases": [
        {
            "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/testKey",
            "AliasName": "alias/testKey",
            "TargetKeyId": "1234abcd-12ab-34cd-56ef-1234567890ab"
        },
        {
            "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/FinanceDept",
            "AliasName": "alias/FinanceDept",
            "TargetKeyId": "0987dcba-09fe-87dc-65ba-ab0987654321"
        },
        {
            "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/aws/dynamodb",
            "AliasName": "alias/aws/dynamodb",
            "TargetKeyId": "1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d"
        },
        {
            "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/aws/ebs",
            "AliasName": "alias/aws/ebs",
            "TargetKeyId": "0987ab65-43cd-21ef-09ab-87654321cdef"
        },
        ...
    ]
}
```
**Contoh 2: Untuk daftar semua alias untuk kunci KMS tertentu**  
Contoh berikut menggunakan `list-aliases` perintah dan `key-id` parameternya untuk daftar semua alias yang terkait dengan kunci KMS tertentu.  
Setiap alias dikaitkan dengan hanya satu kunci KMS, tetapi kunci KMS dapat memiliki beberapa alias. Perintah ini sangat berguna karena konsol AWS KMS hanya mencantumkan satu alias untuk setiap tombol KMS. Untuk menemukan semua alias untuk kunci KMS, Anda harus menggunakan perintah. `list-aliases`  
Contoh ini menggunakan ID kunci kunci KMS untuk `--key-id` parameter, tetapi Anda dapat menggunakan ID kunci, kunci ARN, nama alias, atau alias ARN dalam perintah ini.  

```
aws kms list-aliases --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Output:  

```
{
    "Aliases": [
        {
            "TargetKeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
            "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/oregon-test-key",
            "AliasName": "alias/oregon-test-key"
        },
        {
            "TargetKeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
            "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/project121-test",
            "AliasName": "alias/project121-test"
        }
    ]
}
```
Untuk informasi selengkapnya, lihat [Bekerja dengan Alias](https://docs.aws.amazon.com/kms/latest/developerguide/programming-aliases.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [ListAliases](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/list-aliases.html)di *Referensi AWS CLI Perintah*. 

### `list-grants`
<a name="kms_ListGrants_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`list-grants`.

**AWS CLI**  
**Untuk melihat hibah pada kunci AWS KMS**  
`list-grants`Contoh berikut menampilkan semua hibah pada kunci KMS AWS terkelola yang ditentukan untuk Amazon DynamoDB di akun Anda. Hibah ini memungkinkan DynamoDB untuk menggunakan kunci KMS atas nama Anda untuk mengenkripsi tabel DynamoDB sebelum menulisnya ke disk. Anda dapat menggunakan perintah seperti ini untuk melihat hibah pada kunci KMS yang AWS dikelola dan kunci KMS yang dikelola pelanggan di AWS akun dan Wilayah.  
Perintah ini menggunakan `key-id` parameter dengan ID kunci untuk mengidentifikasi kunci KMS. Anda dapat menggunakan ID kunci atau kunci ARN untuk mengidentifikasi kunci KMS. Untuk mendapatkan ID kunci atau kunci ARN dari kunci KMS yang AWS dikelola, gunakan perintah or. `list-keys` `list-aliases`  

```
aws kms list-grants \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Output menunjukkan bahwa hibah memberikan izin Amazon DynamoDB untuk menggunakan kunci KMS untuk operasi kriptografi, dan memberikan izin untuk melihat detail tentang kunci KMS () dan untuk menghentikan hibah `DescribeKey` (). `RetireGrant` Batasan `EncryptionContextSubset` membatasi izin ini untuk permintaan yang menyertakan pasangan konteks enkripsi yang ditentukan. Akibatnya, izin dalam hibah hanya efektif pada akun tertentu dan tabel DynamoDB.  

```
{
    "Grants": [
        {
            "Constraints": {
                "EncryptionContextSubset": {
                    "aws:dynamodb:subscriberId": "123456789012",
                    "aws:dynamodb:tableName": "Services"
                }
            },
            "IssuingAccount": "arn:aws:iam::123456789012:root",
            "Name": "8276b9a6-6cf0-46f1-b2f0-7993a7f8c89a",
            "Operations": [
                "Decrypt",
                "Encrypt",
                "GenerateDataKey",
                "ReEncryptFrom",
                "ReEncryptTo",
                "RetireGrant",
                "DescribeKey"
            ],
            "GrantId": "1667b97d27cf748cf05b487217dd4179526c949d14fb3903858e25193253fe59",
            "KeyId": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab",
            "RetiringPrincipal": "dynamodb.us-west-2.amazonaws.com",
            "GranteePrincipal": "dynamodb.us-west-2.amazonaws.com",
            "CreationDate": "2021-05-13T18:32:45.144000+00:00"
        }
    ]
}
```
Untuk informasi selengkapnya, lihat [Hibah di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html) di Panduan *Pengembang Layanan Manajemen AWS Utama*.  
+  Untuk detail API, lihat [ListGrants](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/list-grants.html)di *Referensi AWS CLI Perintah*. 

### `list-key-policies`
<a name="kms_ListKeyPolicies_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`list-key-policies`.

**AWS CLI**  
**Untuk mendapatkan nama kebijakan kunci untuk kunci KMS**  
`list-key-policies`Contoh berikut mendapatkan nama-nama kebijakan utama untuk kunci yang dikelola pelanggan di akun contoh dan Wilayah. Anda dapat menggunakan perintah ini untuk menemukan nama kebijakan kunci untuk kunci AWS terkelola dan kunci yang dikelola pelanggan.  
Karena satu-satunya nama kebijakan kunci yang valid adalah`default`, perintah ini tidak berguna.  
Untuk menentukan kunci KMS, gunakan `key-id` parameter. Contoh ini menggunakan nilai ID kunci, tetapi Anda dapat menggunakan ID kunci atau kunci ARN dalam perintah ini.  

```
aws kms list-key-policies \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Output:  

```
{
    "PolicyNames": [
    "default"
    ]
}
```
Untuk informasi selengkapnya tentang kebijakan kunci AWS KMS, lihat [Menggunakan Kebijakan Utama di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) di Panduan *Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [ListKeyPolicies](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/list-key-policies.html)di *Referensi AWS CLI Perintah*. 

### `list-key-rotations`
<a name="kms_ListKeyRotations_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`list-key-rotations`.

**AWS CLI**  
**Untuk mengambil informasi tentang semua rotasi material kunci yang telah selesai**  
`list-key-rotations`Contoh berikut mencantumkan informasi tentang semua rotasi material kunci yang diselesaikan untuk kunci KMS yang ditentukan.  

```
aws kms list-key-rotations \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Output:  

```
{
    "Rotations": [
        {
            "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
            "RotationDate": "2024-03-02T10:11:36.564000+00:00",
            "RotationType": "AUTOMATIC"
        },
        {
            "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
            "RotationDate": "2024-04-05T15:14:47.757000+00:00",
            "RotationType": "ON_DEMAND"
        }
    ],
    "Truncated": false
}
```
Untuk informasi selengkapnya, lihat [Memutar kunci](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [ListKeyRotations](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/list-key-rotations.html)di *Referensi AWS CLI Perintah*. 

### `list-keys`
<a name="kms_ListKeys_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`list-keys`.

**AWS CLI**  
**Untuk mendapatkan kunci KMS di akun dan Wilayah**  
`list-keys`Contoh berikut mendapatkan kunci KMS di akun dan Region. Perintah ini mengembalikan kunci AWS terkelola dan kunci yang dikelola pelanggan.  

```
aws kms list-keys
```
Output:  

```
{
    "Keys": [
        {
            "KeyArn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
            "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab"
        },
        {
            "KeyArn": "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321",
            "KeyId": "0987dcba-09fe-87dc-65ba-ab0987654321"
        },
        {
            "KeyArn": "arn:aws:kms:us-east-2:111122223333:key/1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d",
            "KeyId": "1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d"
        }
    ]
}
```
Untuk informasi selengkapnya, lihat [Melihat AWS Kunci](https://docs.aws.amazon.com/kms/latest/developerguide/viewing-keys.html) *di Panduan Pengembang Layanan Manajemen Kunci*.  
+  Untuk detail API, lihat [ListKeys](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/list-keys.html)di *Referensi AWS CLI Perintah*. 

### `list-resource-tags`
<a name="kms_ListResourceTags_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`list-resource-tags`.

**AWS CLI**  
**Untuk mendapatkan tag pada kunci KMS**  
`list-resource-tags`Contoh berikut mendapatkan tag untuk kunci KMS. Untuk menambah atau mengganti tag sumber daya pada tombol KMS, gunakan `tag-resource` perintah. Output menunjukkan bahwa kunci KMS ini memiliki dua tag sumber daya, yang masing-masing memiliki kunci dan nilai.  
Untuk menentukan kunci KMS, gunakan `key-id` parameter. Contoh ini menggunakan nilai ID kunci, tetapi Anda dapat menggunakan ID kunci atau kunci ARN dalam perintah ini.  

```
aws kms list-resource-tags \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Output:  

```
{
    "Tags": [
    {
        "TagKey": "Dept",
        "TagValue": "IT"
    },
    {
        "TagKey": "Purpose",
        "TagValue": "Test"
    }
    ],
    "Truncated": false
}
```
Untuk informasi selengkapnya tentang penggunaan tag di AWS KMS, lihat [Menandai kunci](https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys.html) di Panduan *Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [ListResourceTags](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/list-resource-tags.html)di *Referensi AWS CLI Perintah*. 

### `list-retirable-grants`
<a name="kms_ListRetirableGrants_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`list-retirable-grants`.

**AWS CLI**  
**Untuk melihat hibah bahwa kepala sekolah dapat pensiun**  
`list-retirable-grants`Contoh berikut menampilkan semua hibah yang `ExampleAdmin` pengguna dapat pensiun pada kunci KMS di AWS akun dan Wilayah. Anda dapat menggunakan perintah seperti ini untuk melihat hibah bahwa setiap prinsipal akun dapat pensiun pada kunci KMS di AWS akun dan Wilayah.  
Nilai `retiring-principal` parameter yang diperlukan harus berupa Nama Sumber Daya Amazon (ARN) dari akun, pengguna, atau peran.  
Anda tidak dapat menentukan layanan untuk nilai `retiring-principal` dalam perintah ini, meskipun layanan dapat menjadi prinsipal pensiun. Untuk menemukan hibah di mana layanan tertentu adalah kepala sekolah pensiun, gunakan perintah. `list-grants`  
Output menunjukkan bahwa `ExampleAdmin` pengguna memiliki izin untuk menghentikan hibah pada dua kunci KMS yang berbeda di akun dan wilayah. Selain kepala sekolah yang pensiun, akun memiliki izin untuk mempensiunkan hibah apa pun di akun.  

```
aws kms list-retirable-grants \
    --retiring-principal arn:aws:iam::111122223333:user/ExampleAdmin
```
Output:  

```
{
    "Grants": [
        {
            "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
            "GrantId": "156b69c63cb154aa21f59929ff19760717be8d9d82b99df53e18b94a15a5e88e",
            "Name": "",
            "CreationDate": 2021-01-14T20:17:36.419000+00:00,
            "GranteePrincipal": "arn:aws:iam::111122223333:user/ExampleUser",
            "RetiringPrincipal": "arn:aws:iam::111122223333:user/ExampleAdmin",
            "IssuingAccount": "arn:aws:iam::111122223333:root",
            "Operations": [
                "Encrypt"
            ],
            "Constraints": {
                "EncryptionContextSubset": {
                    "Department": "IT"
                }
            }
        },
        {
            "KeyId": "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321",
            "GrantId": "8c94d1f12f5e69f440bae30eaec9570bb1fb7358824f9ddfa1aa5a0dab1a59b2",
            "Name": "",
            "CreationDate": "2021-02-02T19:49:49.638000+00:00",
            "GranteePrincipal": "arn:aws:iam::111122223333:role/ExampleRole",
            "RetiringPrincipal": "arn:aws:iam::111122223333:user/ExampleAdmin",
            "IssuingAccount": "arn:aws:iam::111122223333:root",
            "Operations": [
                "Decrypt"
            ],
            "Constraints": {
                "EncryptionContextSubset": {
                    "Department": "IT"
                }
            }
        }
    ],
    "Truncated": false
}
```
Untuk informasi selengkapnya, lihat [Hibah di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html) di Panduan *Pengembang Layanan Manajemen AWS Utama*.  
+  Untuk detail API, lihat [ListRetirableGrants](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/list-retirable-grants.html)di *Referensi AWS CLI Perintah*. 

### `put-key-policy`
<a name="kms_PutKeyPolicy_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`put-key-policy`.

**AWS CLI**  
**Untuk mengubah kebijakan kunci untuk kunci KMS**  
`put-key-policy`Contoh berikut mengubah kebijakan kunci untuk kunci yang dikelola pelanggan.  
Untuk memulai, buat kebijakan kunci dan simpan dalam file JSON lokal. Dalam contoh ini, file tersebut adalah`key_policy.json`. Anda juga dapat menentukan kebijakan kunci sebagai nilai string `policy` parameter.  
Pernyataan pertama dalam kebijakan kunci ini memberikan izin AWS akun untuk menggunakan kebijakan IAM untuk mengontrol akses ke kunci KMS. Pernyataan kedua memberikan izin `test-user` pengguna untuk menjalankan `list-keys` perintah `describe-key` dan pada kunci KMS.  
Isi dari `key_policy.json`:  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id" : "key-default-1",
    "Statement" : [
        {
            "Sid" : "Enable IAM User Permissions",
            "Effect" : "Allow",
            "Principal" : {
                "AWS" : "arn:aws:iam::111122223333:root"
            },
            "Action" : "kms:*",
            "Resource" : "*"
        },
        {
            "Sid" : "Allow Use of Key",
            "Effect" : "Allow",
            "Principal" : {
                "AWS" : "arn:aws:iam::111122223333:user/test-user"
            },
            "Action" : [
                "kms:DescribeKey",
                "kms:ListKeys"
            ],
            "Resource" : "*"
        }
    ]
}
```
Untuk mengidentifikasi kunci KMS, contoh ini menggunakan ID kunci, tetapi Anda juga dapat menggunakan kunci ARN. Untuk menentukan kebijakan kunci, perintah menggunakan `policy` parameter. Untuk menunjukkan bahwa kebijakan tersebut ada dalam file, kebijakan tersebut menggunakan `file://` awalan yang diperlukan. Awalan ini diperlukan untuk mengidentifikasi file pada semua sistem operasi yang didukung. Akhirnya, perintah menggunakan `policy-name` parameter dengan nilai`default`. Jika tidak ada nama kebijakan yang ditentukan, nilai defaultnya adalah`default`. Satu-satunya nilai yang valid adalah `default`.  

```
aws kms put-key-policy \
    --policy-name default \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --policy file://key_policy.json
```
Perintah ini tidak menghasilkan output apa pun. Untuk memverifikasi bahwa perintah itu efektif, gunakan `get-key-policy` perintah. Contoh perintah berikut mendapatkan kebijakan kunci untuk kunci KMS yang sama. `output`Parameter dengan nilai `text` mengembalikan format teks yang mudah dibaca.  

```
aws kms get-key-policy \
    --policy-name default \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --output text
```
Output:  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id" : "key-default-1",
    "Statement" : [
        {
            "Sid" : "Enable IAM User Permissions",
            "Effect" : "Allow",
            "Principal" : {
                "AWS" : "arn:aws:iam::111122223333:root"
            },
            "Action" : "kms:*",
            "Resource" : "*"
            },
            {
            "Sid" : "Allow Use of Key",
            "Effect" : "Allow",
            "Principal" : {
                "AWS" : "arn:aws:iam::111122223333:user/test-user"
            },
            "Action" : [ "kms:Describe", "kms:List" ],
            "Resource" : "*"
        }
    ]
}
```
Untuk informasi selengkapnya, lihat [Mengubah Kebijakan Utama](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [PutKeyPolicy](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/put-key-policy.html)di *Referensi AWS CLI Perintah*. 

### `re-encrypt`
<a name="kms_ReEncrypt_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`re-encrypt`.

**AWS CLI**  
**Contoh 1: Untuk mengenkripsi ulang pesan terenkripsi di bawah kunci KMS simetris yang berbeda (Linux dan macOS).**  
Contoh `re-encrypt` perintah berikut menunjukkan cara yang disarankan untuk mengenkripsi ulang data dengan CLI. AWS   
Berikan ciphertext dalam file.Dalam nilai `--ciphertext-blob` parameter, gunakan `fileb://` awalan, yang memberitahu CLI untuk membaca data dari file biner. Jika file tidak ada di direktori saat ini, ketik path lengkap ke file. Untuk informasi lebih lanjut tentang membaca nilai parameter AWS CLI dari file, lihat Memuat parameter [AWS CLI dari file di Panduan Pengguna Antarmuka Baris AWS Perintah dan Praktik Terbaik untuk Parameter File](https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-parameters-file.html) *Lokal di Blog Alat Baris AWS * [*Perintah*. Tentukan kunci KMS sumber, yang mendekripsi ciphertext. Parameter](https://aws.amazon.com/blogs/developer/best-practices-for-local-file-parameters/) tidak diperlukan saat mendekripsi dengan kunci KMS enkripsi `--source-key-id` simetris. AWS KMS bisa mendapatkan kunci KMS yang digunakan untuk mengenkripsi data dari metadata di gumpalan ciphertext. Tetapi selalu merupakan praktik terbaik untuk menentukan kunci KMS yang Anda gunakan. Praktik ini memastikan bahwa Anda menggunakan kunci KMS yang Anda inginkan, dan mencegah Anda mendekripsi ciphertext secara tidak sengaja menggunakan kunci KMS yang tidak Anda percayai. Tentukan kunci KMS tujuan, yang mengenkripsi ulang data.Parameter selalu diperlukan. `--destination-key-id` Contoh ini menggunakan ARN kunci, tetapi Anda dapat menggunakan pengidentifikasi kunci yang valid.Minta output teks biasa sebagai nilai teks.Parameter `--query` memberitahu CLI untuk mendapatkan hanya nilai bidang dari output. `Plaintext` `--output`Parameter mengembalikan output sebagai text.base64-decode plaintext dan menyimpannya dalam file.Contoh berikut pipa (\$1) nilai `Plaintext` parameter ke utilitas Base64, yang menerjemahkan itu. Kemudian, itu mengalihkan (>) output yang diterjemahkan ke file. `ExamplePlaintext`  
Sebelum menjalankan perintah ini, ganti kunci contoh IDs dengan pengidentifikasi kunci yang valid dari AWS akun Anda.  

```
aws kms re-encrypt \
    --ciphertext-blob fileb://ExampleEncryptedFile \
    --source-key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --destination-key-id 0987dcba-09fe-87dc-65ba-ab0987654321 \
    --query CiphertextBlob \
    --output text | base64 --decode > ExampleReEncryptedFile
```
Perintah ini tidak menghasilkan output. Output dari `re-encrypt` perintah adalah base64-decoded dan disimpan dalam file.  
Untuk informasi selengkapnya, lihat [ReEncrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_ReEncrypt.html)di *Referensi API Layanan Manajemen AWS Kunci*.  
**Contoh 2: Untuk mengenkripsi ulang pesan terenkripsi di bawah tombol KMS simetris yang berbeda (prompt perintah Windows).**  
Contoh `re-encrypt` perintah berikut adalah sama dengan yang sebelumnya kecuali bahwa ia menggunakan `certutil` utilitas untuk Base64-decode data plaintext. Prosedur ini membutuhkan dua perintah, seperti yang ditunjukkan pada contoh berikut.  
Sebelum menjalankan perintah ini, ganti ID kunci contoh dengan ID kunci yang valid dari AWS akun Anda.  

```
aws kms re-encrypt ^
    --ciphertext-blob fileb://ExampleEncryptedFile ^
    --source-key-id 1234abcd-12ab-34cd-56ef-1234567890ab ^
    --destination-key-id 0987dcba-09fe-87dc-65ba-ab0987654321 ^
    --query CiphertextBlob ^
    --output text > ExampleReEncryptedFile.base64
```
Kemudian gunakan `certutil` utilitas  

```
certutil -decode ExamplePlaintextFile.base64 ExamplePlaintextFile
```
Output:  

```
Input Length = 18
Output Length = 12
CertUtil: -decode command completed successfully.
```
Untuk informasi selengkapnya, lihat [ReEncrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_ReEncrypt.html)di *Referensi API Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [ReEncrypt](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/re-encrypt.html)di *Referensi AWS CLI Perintah*. 

### `retire-grant`
<a name="kms_RetireGrant_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`retire-grant`.

**AWS CLI**  
**Untuk pensiun hibah pada kunci master pelanggan**  
`retire-grant`Contoh berikut menghapus hibah dari kunci KMS.  
Contoh perintah berikut menentukan `grant-id` dan `key-id` parameter. Nilai `key-id` parameter harus menjadi kunci ARN dari kunci KMS.  

```
aws kms retire-grant \
    --grant-id 1234a2345b8a4e350500d432bccf8ecd6506710e1391880c4f7f7140160c9af3 \
    --key-id arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
```
Perintah ini tidak menghasilkan output. Untuk mengonfirmasi bahwa hibah telah pensiun, gunakan `list-grants` perintah.  
Untuk informasi selengkapnya, lihat [Pensiun dan pencabutan hibah di Panduan Pengembang](https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#grant-delete) Layanan *Manajemen AWS Utama*.  
+  Untuk detail API, lihat [RetireGrant](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/retire-grant.html)di *Referensi AWS CLI Perintah*. 

### `revoke-grant`
<a name="kms_RevokeGrant_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`revoke-grant`.

**AWS CLI**  
**Untuk mencabut hibah pada kunci master pelanggan**  
`revoke-grant`Contoh berikut menghapus hibah dari kunci KMS. Contoh perintah berikut menentukan `grant-id` dan `key-id` parameter. Nilai `key-id` parameter dapat berupa ID kunci atau kunci ARN dari kunci KMS.  

```
aws kms revoke-grant \
    --grant-id 1234a2345b8a4e350500d432bccf8ecd6506710e1391880c4f7f7140160c9af3 \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Perintah ini tidak menghasilkan output. Untuk mengonfirmasi bahwa hibah telah dicabut, gunakan `list-grants` perintah.  
Untuk informasi selengkapnya, lihat [Pensiun dan pencabutan hibah di Panduan Pengembang](https://docs.aws.amazon.com/kms/latest/developerguide/grant-manage.html#grant-delete) Layanan *Manajemen AWS Utama*.  
+  Untuk detail API, lihat [RevokeGrant](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/revoke-grant.html)di *Referensi AWS CLI Perintah*. 

### `rotate-key-on-demand`
<a name="kms_RotateKeyOnDemand_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`rotate-key-on-demand`.

**AWS CLI**  
**Untuk melakukan rotasi on-demand dari kunci KMS**  
`rotate-key-on-demand`Contoh berikut segera memulai rotasi bahan kunci untuk kunci KMS yang ditentukan.  

```
aws kms rotate-key-on-demand \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Output:  

```
{
    "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab"
}
```
Untuk informasi selengkapnya, lihat [Cara melakukan rotasi kunci sesuai permintaan](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html#rotating-keys-on-demand) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [RotateKeyOnDemand](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/rotate-key-on-demand.html)di *Referensi AWS CLI Perintah*. 

### `schedule-key-deletion`
<a name="kms_ScheduleKeyDeletion_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`schedule-key-deletion`.

**AWS CLI**  
**Untuk menjadwalkan penghapusan kunci KMS yang dikelola pelanggan.**  
`schedule-key-deletion`Contoh berikut menjadwalkan kunci KMS terkelola pelanggan yang ditentukan untuk dihapus dalam 15 hari.  
`--key-id`Parameter mengidentifikasi kunci KMS. Contoh ini menggunakan nilai ARN kunci, tetapi Anda dapat menggunakan ID kunci atau ARN dari kunci `--pending-window-in-days` KMS.Parameter menentukan panjang masa tunggu 7-30 hari. Secara default, masa tunggu adalah 30 hari. Contoh ini menentukan nilai 15, yang memberitahu AWS untuk secara permanen menghapus kunci KMS 15 hari setelah perintah selesai.  

```
aws kms schedule-key-deletion \
    --key-id arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab \
    --pending-window-in-days 15
```
Respons termasuk ARN kunci, status kunci, periode tunggu (`PendingWindowInDays`), dan tanggal penghapusan dalam waktu Unix. Untuk melihat tanggal penghapusan dalam waktu setempat, gunakan konsol AWS KMS. Kunci KMS dalam status `PendingDeletion` kunci tidak dapat digunakan dalam operasi kriptografi.  

```
{
    "KeyId": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "DeletionDate": "2022-06-18T23:43:51.272000+00:00",
    "KeyState": "PendingDeletion",
    "PendingWindowInDays": 15
}
```
Untuk informasi selengkapnya, lihat [Menghapus kunci](https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [ScheduleKeyDeletion](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/schedule-key-deletion.html)di *Referensi AWS CLI Perintah*. 

### `sign`
<a name="kms_Sign_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`sign`.

**AWS CLI**  
**Contoh 1: Untuk menghasilkan tanda tangan digital untuk pesan**  
`sign`Contoh berikut menghasilkan tanda tangan kriptografi untuk pesan singkat. Output dari perintah mencakup `Signature` bidang yang dikodekan basis-64 yang dapat Anda verifikasi dengan menggunakan perintah. `verify`  
Anda harus menentukan pesan yang akan ditandatangani dan algoritma penandatanganan yang didukung oleh kunci KMS asimetris Anda. Untuk mendapatkan algoritma penandatanganan untuk kunci KMS Anda, gunakan perintah. `describe-key`  
Di AWS CLI v2, nilai `message` parameter harus dikodekan Base64. Atau, Anda dapat menyimpan pesan dalam file dan menggunakan `fileb://` awalan, yang memberitahu AWS CLI untuk membaca data biner dari file.  
Sebelum menjalankan perintah ini, ganti ID kunci contoh dengan ID kunci yang valid dari AWS akun Anda. ID kunci harus mewakili kunci KMS asimetris dengan penggunaan kunci SIGN\$1VERIFY.  

```
msg=(echo 'Hello World' | base64)

aws kms sign \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --message fileb://UnsignedMessage \
    --message-type RAW \
    --signing-algorithm RSASSA_PKCS1_V1_5_SHA_256
```
Output:  

```
{
    "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "Signature": "ABCDEFhpyVYyTxbafE74ccSvEJLJr3zuoV1Hfymz4qv+/fxmxNLA7SE1SiF8lHw80fKZZ3bJ...",
    "SigningAlgorithm": "RSASSA_PKCS1_V1_5_SHA_256"
}
```
Untuk informasi selengkapnya tentang penggunaan kunci KMS asimetris di AWS KMS, lihat [Kunci asimetris di AWS KMS di Panduan Pengembang](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) Layanan Manajemen *AWS Kunci*.  
**Contoh 2: Untuk menyimpan tanda tangan digital dalam file (Linux dan macOS)**  
`sign`Contoh berikut menghasilkan tanda tangan kriptografi untuk pesan singkat yang disimpan dalam file lokal. Perintah juga mendapatkan `Signature` properti dari respons, Base64-mendekodekannya dan menyimpannya dalam file. ExampleSignature Anda dapat menggunakan file tanda tangan dalam `verify` perintah yang memverifikasi tanda tangan.  
`sign`Perintah ini memerlukan pesan yang disandikan Base64 dan algoritme penandatanganan yang didukung oleh kunci KMS asimetris Anda. Untuk mendapatkan algoritma penandatanganan yang didukung oleh kunci KMS Anda, gunakan perintah. `describe-key`  
Sebelum menjalankan perintah ini, ganti ID kunci contoh dengan ID kunci yang valid dari AWS akun Anda. ID kunci harus mewakili kunci KMS asimetris dengan penggunaan kunci SIGN\$1VERIFY.  

```
echo 'hello world' | base64 > EncodedMessage

aws kms sign \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --message fileb://EncodedMessage \
    --message-type RAW \
    --signing-algorithm RSASSA_PKCS1_V1_5_SHA_256 \
    --output text \
    --query Signature | base64 --decode > ExampleSignature
```
Perintah ini tidak menghasilkan output. Contoh ini mengekstrak `Signature` properti output dan menyimpannya dalam file.  
Untuk informasi selengkapnya tentang penggunaan kunci KMS asimetris di AWS KMS, lihat [Kunci asimetris di AWS KMS di Panduan Pengembang](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) Layanan Manajemen *AWS Kunci*.  
+  Untuk detail API, lihat *Referensi AWS CLI Perintah* [Masuk](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/sign.html). 

### `tag-resource`
<a name="kms_TagResource_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`tag-resource`.

**AWS CLI**  
**Untuk menambahkan tag ke kunci KMS**  
`tag-resource`Contoh berikut menambahkan `"Purpose":"Test"` dan `"Dept":"IT"` tag ke kunci KMS yang dikelola pelanggan. Anda dapat menggunakan tag seperti ini untuk memberi label kunci KMS dan membuat kategori kunci KMS untuk izin dan audit.  
Untuk menentukan kunci KMS, gunakan `key-id` parameter. Contoh ini menggunakan nilai ID kunci, tetapi Anda dapat menggunakan ID kunci atau kunci ARN dalam perintah ini.  

```
aws kms tag-resource \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --tags TagKey='Purpose',TagValue='Test' TagKey='Dept',TagValue='IT'
```
Perintah ini tidak menghasilkan output. Untuk melihat tag pada tombol AWS KMS KMS, gunakan perintah. `list-resource-tags`  
Untuk informasi selengkapnya tentang penggunaan tag di AWS KMS, lihat [Menandai kunci](https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys.html) di Panduan *Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [TagResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/tag-resource.html)di *Referensi AWS CLI Perintah*. 

### `untag-resource`
<a name="kms_UntagResource_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`untag-resource`.

**AWS CLI**  
**Untuk menghapus tag dari kunci KMS**  
`untag-resource`Contoh berikut menghapus tag dengan `"Purpose"` kunci dari kunci KMS yang dikelola pelanggan.  
Untuk menentukan kunci KMS, gunakan `key-id` parameter. Contoh ini menggunakan nilai ID kunci, tetapi Anda dapat menggunakan ID kunci atau kunci ARN dalam perintah ini. Sebelum menjalankan perintah ini, ganti ID kunci contoh dengan ID kunci yang valid dari AWS akun Anda.  

```
aws kms untag-resource \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --tag-key 'Purpose'
```
Perintah ini tidak menghasilkan output. Untuk melihat tag pada tombol AWS KMS KMS, gunakan perintah. `list-resource-tags`  
Untuk informasi selengkapnya tentang penggunaan tag di AWS KMS, lihat [Menandai kunci](https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys.html) di Panduan *Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [UntagResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/untag-resource.html)di *Referensi AWS CLI Perintah*. 

### `update-alias`
<a name="kms_UpdateAlias_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`update-alias`.

**AWS CLI**  
**Untuk mengaitkan alias dengan kunci KMS yang berbeda**  
`update-alias`Contoh berikut mengaitkan alias `alias/test-key` dengan kunci KMS yang berbeda.  
`--alias-name`Parameter menentukan alias. Nilai nama alias harus dimulai dengan`alias/`. `--target-key-id` Parameter menentukan kunci KMS untuk mengasosiasikan dengan alias. Anda tidak perlu menentukan kunci KMS saat ini untuk alias.  

```
aws kms update-alias \
    --alias-name alias/test-key \
    --target-key-id 1234abcd-12ab-34cd-56ef-1234567890ab
```
Perintah ini tidak menghasilkan output. Untuk menemukan alias, gunakan `list-aliases` perintah.  
Untuk informasi selengkapnya, lihat [Memperbarui alias](https://docs.aws.amazon.com/kms/latest/developerguide/alias-manage.html#alias-update) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [UpdateAlias](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/update-alias.html)di *Referensi AWS CLI Perintah*. 

### `update-custom-key-store`
<a name="kms_UpdateCustomKeyStore_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`update-custom-key-store`.

**AWS CLI**  
**Contoh 1: Untuk mengedit nama ramah dari toko kunci kustom**  
`update-custom-key-store`Contoh berikut mengubah nama toko kunci kustom. Contoh ini berfungsi untuk penyimpanan kunci AWS CloudHSM atau penyimpanan kunci eksternal.  
Gunakan `custom-key-store-id` untuk mengidentifikasi toko kunci. Gunakan `new-custom-key-store-name` parameter untuk menentukan nama ramah baru.  
Untuk memperbarui nama ramah dari toko kunci AWS CloudHSM, Anda harus terlebih dahulu memutuskan sambungan key store, seperti dengan menggunakan perintah. `disconnect-custom-key-store` Anda dapat memperbarui nama ramah dari toko kunci eksternal saat terhubung atau terputus. Untuk menemukan status koneksi toko kunci kustom Anda, gunakan `describe-custom-key-store` perintah.  

```
aws kms update-custom-key-store \
    --custom-key-store-id cks-1234567890abcdef0 \
    --new-custom-key-store-name ExampleKeyStore
```
Perintah ini tidak mengembalikan data apa pun. Untuk memverifikasi bahwa perintah berfungsi, gunakan `describe-custom-key-stores` perintah.  
*Untuk informasi selengkapnya tentang memperbarui penyimpanan kunci AWS CloudHSM, lihat [Mengedit setelan penyimpanan kunci AWS CloudHSM di Panduan Pengembang Layanan Manajemen Kunci](https://docs.aws.amazon.com/kms/latest/developerguide/update-keystore.html).AWS *  
Untuk informasi selengkapnya tentang memperbarui penyimpanan kunci eksternal, lihat [Mengedit properti penyimpanan kunci eksternal](https://docs.aws.amazon.com/kms/latest/developerguide/update-xks-keystore.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
**Contoh 2: Untuk mengedit kata sandi kmsuser dari toko kunci AWS CloudHSM**  
`update-custom-key-store`Contoh berikut memperbarui nilai `kmsuser` kata sandi ke kata sandi saat ini untuk `kmsuser` di klaster CloudHSM yang terkait dengan penyimpanan kunci yang ditentukan. Perintah ini tidak mengubah `kmsuser` kata sandi klaster. Itu hanya memberi tahu AWS KMS kata sandi saat ini. Jika KMS tidak memiliki `kmsuser` kata sandi saat ini, KMS tidak dapat terhubung ke toko kunci AWS CloudHSM.  
**CATATAN:** Sebelum memperbarui toko kunci AWS CloudHSM, Anda harus memutusnya. Gunakan perintah `disconnect-custom-key-store`. Setelah perintah selesai, Anda dapat menghubungkan kembali toko kunci CloudHSM AWS . Gunakan perintah `connect-custom-key-store`.  

```
aws kms update-custom-key-store \
    --custom-key-store-id cks-1234567890abcdef0 \
    --key-store-password ExamplePassword
```
Perintah ini tidak memberikan output apa pun. Untuk memverifikasi bahwa perubahan itu efektif, gunakan `describe-custom-key-stores` perintah.  
*Untuk informasi selengkapnya tentang memperbarui penyimpanan kunci AWS CloudHSM, lihat [Mengedit setelan penyimpanan kunci AWS CloudHSM di Panduan Pengembang Layanan Manajemen Kunci](https://docs.aws.amazon.com/kms/latest/developerguide/update-keystore.html).AWS *  
**Contoh 3: Untuk mengedit klaster AWS CloudHSM dari toko kunci CloudHSM AWS **  
Contoh berikut mengubah klaster AWS CloudHSM yang dikaitkan dengan penyimpanan kunci AWS CloudHSM ke cluster terkait, seperti cadangan yang berbeda dari cluster yang sama.  
**CATATAN:** Sebelum memperbarui toko kunci AWS CloudHSM, Anda harus memutusnya. Gunakan perintah `disconnect-custom-key-store`. Setelah perintah selesai, Anda dapat menghubungkan kembali toko kunci CloudHSM AWS . Gunakan perintah `connect-custom-key-store`.  

```
aws kms update-custom-key-store \
    --custom-key-store-id cks-1234567890abcdef0 \
    --cloud-hsm-cluster-id cluster-1a23b4cdefg
```
Perintah ini tidak memberikan output apa pun. Untuk memverifikasi bahwa perubahan itu efektif, gunakan `describe-custom-key-stores` perintah.  
*Untuk informasi selengkapnya tentang memperbarui penyimpanan kunci AWS CloudHSM, lihat [Mengedit setelan penyimpanan kunci AWS CloudHSM di Panduan Pengembang Layanan Manajemen Kunci](https://docs.aws.amazon.com/kms/latest/developerguide/update-keystore.html).AWS *  
**Contoh 4: Untuk mengedit kredensi otentikasi proxy dari penyimpanan kunci eksternal**  
Contoh berikut memperbarui kredensi otentikasi proxy untuk penyimpanan kunci eksternal Anda. Anda harus menentukan keduanya `raw-secret-access-key` dan`access-key-id`, bahkan jika Anda hanya mengubah salah satu nilai. Anda dapat menggunakan fitur ini untuk memperbaiki kredensi yang tidak valid atau untuk mengubah kredensialnya saat proxy penyimpanan kunci eksternal memutarnya.  
Tetapkan kredensi otentikasi proxy untuk AWS KMS di toko kunci eksternal Anda. Kemudian gunakan perintah ini untuk memberikan kredensi ke AWS KMS. AWS KMS menggunakan kredensi ini untuk menandatangani permintaannya ke proxy penyimpanan kunci eksternal Anda.  
Anda dapat memperbarui kredensi otentikasi proxy saat penyimpanan kunci eksternal terhubung atau terputus. Untuk menemukan status koneksi toko kunci kustom Anda, gunakan `describe-custom-key-store` perintah.  

```
aws kms update-custom-key-store \
    --custom-key-store-id cks-1234567890abcdef0 \
    --xks-proxy-authentication-credential "AccessKeyId=ABCDE12345670EXAMPLE, RawSecretAccessKey=DXjSUawnel2fr6SKC7G25CNxTyWKE5PF9XX6H/u9pSo="
```
Perintah ini tidak memberikan output apa pun. Untuk memverifikasi bahwa perubahan itu efektif, gunakan `describe-custom-key-stores` perintah.  
Untuk informasi selengkapnya tentang memperbarui penyimpanan kunci eksternal, lihat [Mengedit properti penyimpanan kunci eksternal](https://docs.aws.amazon.com/kms/latest/developerguide/update-xks-keystore.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
**Contoh 5: Untuk mengedit konektivitas proxy dari penyimpanan kunci eksternal**  
Contoh berikut mengubah opsi konektivitas proxy penyimpanan kunci eksternal dari konektivitas titik akhir publik ke konektivitas layanan titik akhir VPC. Selain mengubah `xks-proxy-connectivity` nilai, Anda harus mengubah `xks-proxy-uri-endpoint` nilai untuk mencerminkan nama DNS pribadi yang terkait dengan layanan titik akhir VPC. Anda juga harus menambahkan `xks-proxy-vpc-endpoint-service-name` nilai.  
**CATATAN:** Sebelum memperbarui konektivitas proxy dari toko eksternal, Anda harus memutusnya. Gunakan perintah `disconnect-custom-key-store`. Setelah perintah selesai, Anda dapat menghubungkan kembali penyimpanan kunci eksternal dengan menggunakan perintah. `connect-custom-key-store`  

```
aws kms update-custom-key-store \
    --custom-key-store-id cks-1234567890abcdef0 \
    --xks-proxy-connectivity VPC_ENDPOINT_SERVICE \
    --xks-proxy-uri-endpoint "https://myproxy-private.xks.example.com" \
    --xks-proxy-vpc-endpoint-service-name "com.amazonaws.vpce.us-east-1.vpce-svc-example"
```
Perintah ini tidak memberikan output apa pun. Untuk memverifikasi bahwa perubahan itu efektif, gunakan `describe-custom-key-stores` perintah.  
Untuk informasi selengkapnya tentang memperbarui penyimpanan kunci eksternal, lihat [Mengedit properti penyimpanan kunci eksternal](https://docs.aws.amazon.com/kms/latest/developerguide/update-xks-keystore.html) di *Panduan Pengembang Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [UpdateCustomKeyStore](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/update-custom-key-store.html)di *Referensi AWS CLI Perintah*. 

### `update-key-description`
<a name="kms_UpdateKeyDescription_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`update-key-description`.

**AWS CLI**  
**Contoh 1: Untuk menambah atau mengubah deskripsi ke kunci KMS yang dikelola pelanggan**  
`update-key-description`Contoh berikut menambahkan deskripsi ke kunci KMS yang dikelola pelanggan. Anda dapat menggunakan perintah yang sama untuk mengubah deskripsi yang ada.  
`--key-id`Parameter mengidentifikasi kunci KMS dalam perintah. Contoh ini menggunakan nilai ARN kunci, tetapi Anda dapat menggunakan ID kunci atau ARN kunci dari kunci KMS.Parameter menentukan deskripsi baru`--description`. Nilai parameter ini menggantikan deskripsi kunci KMS saat ini, jika ada.  

```
aws kms update-key-description \
    --key-id arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab \
    --description "IT Department test key"
```
Perintah ini tidak menghasilkan output. Untuk melihat deskripsi kunci KMS, gunakan `describe-key` perintah.  
Untuk informasi selengkapnya, lihat [UpdateKeyDescription](https://docs.aws.amazon.com/cli/latest/reference/kms/update-key-description.html)di *Referensi API Layanan Manajemen AWS Kunci*.  
**Contoh 2: Untuk menghapus deskripsi kunci KMS yang dikelola pelanggan**  
`update-key-description`Contoh berikut menghapus deskripsi ke kunci KMS yang dikelola pelanggan.  
`--key-id`Parameter mengidentifikasi kunci KMS dalam perintah. Contoh ini menggunakan nilai ID kunci, tetapi Anda dapat menggunakan ID kunci atau ARN kunci dari kunci `--description` KMS.Parameter dengan nilai string kosong (“) menghapus deskripsi yang ada.  

```
aws kms update-key-description \
    --key-id 0987dcba-09fe-87dc-65ba-ab0987654321 \
    --description ''
```
Perintah ini tidak menghasilkan output. Untuk melihat deskripsi kunci KMS, gunakan perintah deskripsi-kunci.  
Untuk informasi selengkapnya, lihat [UpdateKeyDescription](https://docs.aws.amazon.com/cli/latest/reference/kms/update-key-description.html)di *Referensi API Layanan Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [UpdateKeyDescription](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/update-key-description.html)di *Referensi AWS CLI Perintah*. 

### `verify-mac`
<a name="kms_VerifyMac_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`verify-mac`.

**AWS CLI**  
**Contoh 1: Untuk memverifikasi HMAC**  
`verify-mac`Perintah berikut memverifikasi HMAC untuk pesan tertentu, kunci HMAC KMS, dan algoritma MAC. Nilai 'true' dalam MacValid nilai dalam respons menunjukkan bahwa HMAC valid.  
Di AWS CLI v2, nilai `message` parameter harus dikodekan Base64. Atau, Anda dapat menyimpan pesan dalam file dan menggunakan `fileb://` awalan, yang memberitahu AWS CLI untuk membaca data biner dari file.  
MAC yang Anda tentukan tidak dapat dikodekan base64. Untuk bantuan decoding MAC yang dikembalikan `generate-mac` perintah, lihat contoh `generate-mac` perintah.  
Sebelum menjalankan perintah ini, ganti ID kunci contoh dengan ID kunci yang valid dari AWS akun Anda. ID kunci harus mewakili kunci HMAC KMS dengan penggunaan kunci. `GENERATE_VERIFY_MAC`  

```
msg=(echo 'Hello World' | base64)

aws kms verify-mac \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --message fileb://Message \
    --mac-algorithm HMAC_SHA_384 \
    --mac fileb://ExampleMac
```
Output:  

```
{
    "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "MacValid": true,
    "MacAlgorithm": "HMAC_SHA_384"
}
```
Untuk informasi selengkapnya tentang menggunakan kunci KMS HMAC di AWS KMS, lihat [kunci HMAC di AWS KMS di Panduan Pengembang](https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html) Layanan Manajemen *AWS Kunci*.  
+  Untuk detail API, lihat [VerifyMac](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/verify-mac.html)di *Referensi AWS CLI Perintah*. 

### `verify`
<a name="kms_Verify_cli_2_topic"></a>

Contoh kode berikut menunjukkan cara menggunakan`verify`.

**AWS CLI**  
**Untuk memverifikasi tanda tangan digital**  
`verify`Perintah berikut memverifikasi tanda tangan kriptografi untuk pesan singkat yang disandikan Base64. ID kunci, pesan, jenis pesan, dan algoritma penandatanganan harus sama dengan yang digunakan untuk menandatangani pesan.  
Di AWS CLI v2, nilai `message` parameter harus dikodekan Base64. Atau, Anda dapat menyimpan pesan dalam file dan menggunakan `fileb://` awalan, yang memberitahu AWS CLI untuk membaca data biner dari file.  
Tanda tangan yang Anda tentukan tidak dapat dikodekan base64. Untuk bantuan decoding tanda tangan yang dikembalikan `sign` perintah, lihat contoh `sign` perintah.  
Output dari perintah termasuk `SignatureValid` bidang Boolean yang menunjukkan bahwa tanda tangan telah diverifikasi. Jika validasi tanda tangan gagal, `verify` perintah juga gagal.  
Sebelum menjalankan perintah ini, ganti ID kunci contoh dengan ID kunci yang valid dari AWS akun Anda.  

```
aws kms verify \
    --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \
    --message fileb://EncodedMessage \
    --message-type RAW \
    --signing-algorithm RSASSA_PKCS1_V1_5_SHA_256 \
    --signature fileb://ExampleSignature
```
Output:  

```
{
    "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "SignatureValid": true,
    "SigningAlgorithm": "RSASSA_PKCS1_V1_5_SHA_256"
}
```
Untuk informasi selengkapnya tentang penggunaan kunci KMS asimetris di AWS KMS, lihat [Menggunakan kunci asimetris di Panduan Pengembang](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) Layanan *Manajemen AWS Kunci*.  
+  Untuk detail API, lihat [Verifikasi](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kms/verify.html) di *Referensi AWS CLI Perintah*. 