正在更新AWS KMS鑰匙圈 - AWS Encryption SDK

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

正在更新AWS KMS鑰匙圈

所以此AWS KMS鑰匙圈中適用於 C 的 AWS Encryption SDK,該AWS Encryption SDK針對 .NET,以及適用於 JavaScript 的 AWS Encryption SDK支持最佳實務允許您在加密和解密時指定包裝密鑰。如果您建立AWS KMS探索鑰匙圈,您明確地這樣做。

注意

最早的版本AWS Encryption SDK.NET 是 3.0 版。x。所有版本AWS Encryption SDK為了 .NET 支持 2.0 中引入的安全最佳實踐。x的AWS Encryption SDK。您可以安全地升級到最新版本,而無需任何代碼或數據更改。

當您更新到最新的 1.x的版本AWS Encryption SDK,您可以使用探索篩選限制包裝鍵AWS KMS探索鑰匙圈或者AWS KMS區域探索鑰匙圈特別是解密到那些時使用AWS 帳戶。篩選探索金鑰圈是AWS Encryption SDK 最佳實務

本節中的範例將說明如何將探索篩選器新增至AWS KMS區域探索鑰匙圈。

進一步了解移轉

適用於所有AWS Encryption SDK使用者, 瞭解如何設定承諾原則設定承諾產品原則

對於適用於 JAVA 的 AWS Encryption SDK、適用於 Python 的 AWS Encryption SDK,以及AWS加密 CLI 使用者,瞭解主金鑰提供者的必要更新更新AWS KMS主要金鑰提供者

 

您的應用程序中可能有如下所示的代碼。本範例會建立AWS KMS區域探索金鑰圈只能在美國西部 (奧勒岡) (us-west-2) 區域中使用包裝金鑰圈。此範例代表AWS Encryption SDK1.7 版。x。但是,它在 1.7 版本中仍然有效。x和更新版本。

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 })

從 1.7 版中開始。x,您可以將探索篩選器新增至任何AWS KMS探索鑰匙圈。此探索篩選器會限制AWS KMS keys那AWS Encryption SDK可以用於解密指定分區和帳戶中的那些。在使用此程式碼之前,請視需要變更分割區,並以有效的帳戶 ID 取代範例帳戶 ID。

C

如需完整的範例,請參閱kms_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

如需完整的範例,請參閱已找到的 .ts 檔案

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