MemperbaruiAWS KMSgantungan kunci - AWS Encryption SDK

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

MemperbaruiAWS KMSgantungan kunci

KlasterAWS KMSkeyrings diAWS Encryption SDK for C, yangAWS Encryption SDKuntuk .NET, danAWS Encryption SDK for JavaScriptdukunganpraktik terbaikdengan memungkinkan Anda menentukan kunci pembungkus saat mengenkripsi dan mendekripsi. Jika Anda membuatAWS KMSkeyring, Anda melakukannya secara eksplisit.

catatan

Versi paling awal dariAWS Encryption SDKfor .NET adalah versi 3.0.x. Semua versiAWS Encryption SDKuntuk .NET mendukung praktik terbaik keamanan yang diperkenalkan pada 2.0.xdariAWS Encryption SDK. Anda dapat dengan aman meng-upgrade ke versi terbaru tanpa kode atau perubahan data.

Saat Anda memperbarui ke 1 terbaru.xversiAWS Encryption SDK, Anda dapat menggunakanPenemuan Filteruntuk membatasi kunci pembungkusAWS KMSkeyringatauAWS KMSkeyring penemuan regionalmenggunakan saat mendekripsi ke yang pada khususnyaAkun AWS. Memfilter keyring penemuan adalahAWS Encryption SDK praktik terbaik.

Contoh di bagian ini akan menunjukkan kepada Anda cara menambahkan filter penemuan keAWS KMSkeyring penemuan regional.

Pelajari lebih lanjut tentang migrasi

Untuk semuaAWS Encryption SDKpengguna, pelajari tentang menetapkan kebijakan komitmen AndaMenetapkan kebijakan komitmen Anda.

UntukAWS Encryption SDK for Java,AWS Encryption SDK for Python, danAWSEnkripsi pengguna CLI, pelajari tentang pembaruan yang diperlukan untuk menguasai penyedia kunci diMemperbarui penyedia kunci AWS KMS utama.

 

Anda mungkin memiliki kode seperti berikut dalam aplikasi Anda. Contoh ini menciptakanAWS KMSkeyring penemuan regional yang hanya dapat menggunakan kunci pembungkus di Wilayah US West (Oregon) (us-west-2). Contoh ini merupakan kode diAWS Encryption SDKversi lebih awal dari 1.7.x. Namun, ini masih berlaku di versi 1.7.xdan nantinya.

C
struct aws_cryptosdk_keyring *kms_regional_keyring = Aws::Cryptosdk::KmsKeyring::Builder() .WithKmsClient(create_kms_client(Aws::Region::US_WEST_2)).BuildDiscovery());
JavaScript Browser
const clientProvider = getClient(KMS, { credentials }) const discovery = true const clientProvider = limitRegions(['us-west-2'], getKmsClient) const keyring = new KmsKeyringBrowser({ clientProvider, discovery })
JavaScript Node.js
const discovery = true const clientProvider = limitRegions(['us-west-2'], getKmsClient) const keyring = new KmsKeyringNode({ clientProvider, discovery })

Dimulai pada versi 1.7.x, Anda dapat menambahkan filter penemuan keAWS KMSkeyring penemuan. Filter penemuan ini membatasiAWS KMS keysbahwaAWS Encryption SDKdapat digunakan untuk dekripsi kepada orang-orang di partisi tertentu dan account. Sebelum menggunakan kode ini, ubah partisi, jika perlu, dan ganti ID akun contoh dengan yang valid.

C

Untuk contoh lengkap, lihatkms_discovery.cpp.

std::shared_ptr<KmsKeyring::DiscoveryFilter> discovery_filter( KmsKeyring::DiscoveryFilter::Builder("aws") .AddAccount("111122223333") .AddAccount("444455556666") .Build()); struct aws_cryptosdk_keyring *kms_regional_keyring = Aws::Cryptosdk::KmsKeyring::Builder() .WithKmsClient(create_kms_client(Aws::Region::US_WEST_2)).BuildDiscovery(discovery_filter));
JavaScript Browser
const clientProvider = getClient(KMS, { credentials }) const discovery = true const clientProvider = limitRegions(['us-west-2'], getKmsClient) const keyring = new KmsKeyringBrowser(clientProvider, { discovery, discoveryFilter: { accountIDs: ['111122223333', '444455556666'], partition: 'aws' } })
JavaScript Node.js

Untuk contoh lengkap, lihatkms_filtered_discovery.ts.

const discovery = true const clientProvider = limitRegions(['us-west-2'], getKmsClient) const keyring = new KmsKeyringNode({ clientProvider, discovery, discoveryFilter: { accountIDs: ['111122223333', '444455556666'], partition: 'aws' } })