本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 加密 SageMaker 您的 Canvas 資料 AWS KMS
您可能會在使用 Amazon SageMaker Canvas 時想要加密的資料,例如您的私有公司資訊或客戶資料。 SageMaker Canvas AWS Key Management Service 用於保護資料。 AWS KMS 是一項可用來建立和管理加密資料的密碼編譯金鑰的服務。如需 的詳細資訊 AWS KMS,請參閱 開發人員指南 AWS Key Management Service 中的 。 AWS KMS
Amazon SageMaker Canvas 為您提供多種加密資料的選項。 SageMaker Canvas 會在應用程式中為建立模型和產生洞見等任務提供預設加密。您也可以選擇加密 Amazon S3 中存放的資料,以保護靜態資料。 SageMaker Canvas 支援匯入加密的資料集,因此您可以建立加密的工作流程。下列各節說明如何使用 AWS KMS 加密來保護資料,同時使用 SageMaker Canvas 建置模型。
在 SageMaker Canvas 中加密您的資料
透過 SageMaker Canvas,您可以使用兩個不同的 AWS KMS 加密金鑰來加密 SageMaker Canvas 中的資料,您可以在使用標準網域設定設定網域時指定此金鑰。這些金鑰會在下列網域設定步驟中指定:
-
步驟 3:設定應用程式 - (選用) – 設定 Canvas 儲存組態區段時,您可以指定加密金鑰 。這是 SageMaker Canvas 用於長期儲存模型物件和資料集的KMS金鑰,這些物件和資料集存放在您網域的 Amazon S3 儲存貯體中。如果使用 CreateApp 建立 Canvas 應用程式API,請使用
S3KMSKeyId
欄位來指定此金鑰。 -
步驟 6:設定儲存 – SageMaker Canvas 使用一個金鑰來加密為 Canvas 應用程式建立的 Amazon SageMaker Studio 私有空間,其中包括暫時性應用程式儲存、視覺化和運算任務 (例如建置模型)。您可以使用預設 AWS 受管金鑰或指定自己的金鑰。如果您指定 AWS KMS 金鑰,儲存在
/home/sagemaker-user
目錄中的資料會使用金鑰加密。如果您未指定 AWS KMS 金鑰,內部的資料/home/sagemaker-user
會使用 AWS 受管金鑰加密。無論您是否指定 AWS KMS 金鑰,工作目錄以外的所有資料都會使用 AWS Managed Key 加密。若要進一步了解 Studio 空間和 Canvas 應用程式儲存體,請參閱 將 SageMaker Canvas 應用程式資料存放在您自己的 SageMaker空間。如果使用 CreateApp 建立 Canvas 應用程式API,請使用KmsKeyID
欄位來指定此金鑰。
上述金鑰可以是相同或不同的KMS金鑰。
必要條件
若要將自己的KMS金鑰用於上述任一用途,您必須先授予使用者IAM的角色許可,才能使用金鑰。然後,您可以在設定網域時指定 KMS 金鑰。
授予角色使用金鑰的最簡單方法是修改金鑰政策。使用以下處理程序為您的角色授予必要的許可。
-
開啟 AWS KMS 主控台
。 -
在金鑰政策區段中,選擇切換為政策檢視。
-
修改金鑰的政策,將
kms:GenerateDataKey
和kms:Decrypt
動作的許可授予IAM角色。此外,如果您正在修改金鑰政策,以加密 Studio 空間中的 Canvas 應用程式儲存體,請授予kms:CreateGrant
動作。您可以新增類似以下的陳述式:{ "Sid": "ExampleStmt", "Action": [ "kms:CreateGrant", #this permission is only required for the key that encrypts your SageMaker Canvas application storage "kms:Decrypt", "kms:GenerateDataKey" ], "Effect": "Allow", "Principal": { "AWS": "
<arn:aws:iam::111122223333:role/Jane>
" }, "Resource": "*" } -
選擇 Save changes (儲存變更)。
較不偏好的方法是修改使用者IAM的角色,以授予使用者使用或管理KMS金鑰的許可。如果您使用此方法,KMS金鑰政策也必須允許透過 進行存取管理IAM。若要了解如何透過使用者IAM的角色授予KMS金鑰的許可,請參閱 AWS KMS 開發人員指南 中的在IAM政策陳述式中指定KMS金鑰。
時間序列預測的先決條件
若要使用 AWS KMS 金鑰來加密 SageMaker Canvas 中的時間序列預測模型,您必須修改用於將物件儲存至 Amazon S3 的金鑰KMS的金鑰政策。您的金鑰政策必須授予 許可AmazonSageMakerCanvasForecastRole
,該許可會在您授予使用者 的時間序列預測許可時 SageMaker 建立。Amazon Forecast 使用 AmazonSageMakerCanvasForecastRole
來執行 SageMaker Canvas 中的時間序列預測操作。您的KMS金鑰必須授予此角色的許可,以確保資料已加密,以進行時間序列預測。
若要修改KMS金鑰政策的許可以允許加密的時間序列預測,請執行下列動作。
-
開啟 AWS KMS 主控台
。 -
在金鑰政策區段中,選擇切換為政策檢視。
-
修改金鑰的政策,使其具有在下列範例中指定的許可:
{ "Sid": "Enable IAM Permissions for Amazon Forecast KMS access", "Effect": "Allow", "Principal": { "AWS": "
<arn:aws:iam::111122223333:role/service-role/AmazonSagemakerCanvasForecastRole-111122223333>
" }, "Action": [ "kms:DescribeKey", "kms:CreateGrant", "kms:RetireGrant", "kms:GenerateDataKey", "kms:GenerateDataKeyWithoutPlainText", "kms:Decrypt" ], "Resource": "*" } -
選擇 Save changes (儲存變更)。
您現在可以使用 KMS 金鑰來加密 SageMaker Canvas 中的時間序列預測操作。
注意
只有在您使用IAM角色設定方法設定時間序列預測時,才需要下列許可。將下列許可政策新增至使用者IAM的角色。您還必須使用 Amazon Forecast 所需的更新政策來更新金鑰政策。如需時間序列預測所需許可的詳細資訊,請參閱授予使用者執行時間序列預測的許可。
{ "Sid": "Enable IAM Permissions for Amazon Forecast KMS access", "Effect": "Allow", "Principal": { "AWS": "
<arn:aws:iam::111122223333:role/AmazonSageMaker-111122223333>
" }, "Action": [ "kms:Decrypt", "kms:DescribeKey", "kms:CreateGrant", "kms:RetireGrant", "kms:GenerateDataKey" "kms:GenerateDataKeyWithoutPlainText", ], "Resource": "*" }
在 SageMaker Canvas 應用程式中加密您的資料
您可以在 SageMaker Canvas 中使用的第一個KMS金鑰,用於加密存放在 Amazon Elastic Block Store (Amazon EBS) 磁碟區和網域中 SageMaker 建立的 Amazon Elastic File System 中的應用程式資料。 SageMaker Canvas 會在基礎應用程式和臨時儲存系統中使用此金鑰加密資料,這些金鑰是在使用運算執行個體建立模型和產生洞察時建立的。 SageMaker Canvas 會在 SageMaker Canvas 啟動任務時,將金鑰傳遞給其他服務, AWS 例如 Autopilot。
您可以在CreateDomain
API通話KmsKeyID
中設定 或在主控台中執行標準網域設定時指定此金鑰。如果您未指定自己的KMS金鑰, SageMaker 會使用預設 AWS 的受管KMS金鑰來加密 SageMaker Canvas 應用程式中的資料。
若要透過主控台指定自己的KMS金鑰,以便在 SageMaker Canvas 應用程式中使用,請先使用標準設定 來設定您的 Amazon SageMaker 網域。使用下列程序來完成網域的網路和儲存區段。
-
填寫您想要的 Amazon VPC設定。
-
針對加密金鑰 ,選擇輸入KMS金鑰 ARN。
-
針對 KMS ARN,輸入 KMS 金鑰ARN的 ,其格式應類似下列:
arn:aws:kms:example-region-1:123456789098:key/111aa2bb-333c-4d44-5555-a111bb2c33dd
加密儲存在 Amazon S3 中的 SageMaker Canvas 資料
您可以指定的第二個KMS金鑰用於 SageMaker Canvas 儲存至 Amazon S3 的資料。此KMS金鑰是在 CreateDomain
API 通話中的 S3KMSKeyId
欄位,或在 SageMaker 主控台中執行標準網域設定時指定。 SageMaker Canvas 會將輸入資料集、應用程式和模型資料,以及輸出資料的複本儲存至您帳戶的區域預設 SageMaker S3 儲存貯體。此儲存貯體的命名模式為 s3://sagemaker-
, SageMaker Canvas 會將資料存放在 {Region}
-{your-account-id}
Canvas/
資料夾中。
-
開啟啟用筆記本資源共用。
-
對於可共用筆記本資源的 S3 位置,請保留預設的 Amazon S3 路徑。請注意, SageMaker Canvas 不會使用此 Amazon S3 路徑;此 Amazon S3 路徑用於 Studio Classic 筆記本。
-
針對加密金鑰 ,選擇輸入KMS金鑰 ARN。
-
針對 KMS ARN,輸入 KMS 金鑰ARN的 ,其格式應類似下列:
arn:aws:kms:us-east-1:111122223333:key/111aa2bb-333c-4d44-5555-a111bb2c33dd
從 Amazon S3 匯入加密資料集
您的使用者可能有已使用KMS金鑰加密的資料集。雖然上一節說明如何加密 SageMaker Canvas 中的資料和存放到 Amazon S3 的資料,但如果您要從已使用 加密的 Amazon S3 匯入資料,則必須授予使用者IAM角色的額外許可 AWS KMS。
若要授予使用者將加密資料集從 Amazon S3 匯入 SageMaker Canvas 的許可,請將下列許可新增至您用於使用者設定檔的IAM執行角色。
"kms:Decrypt", "kms:GenerateDataKey"
若要了解如何編輯角色的IAM許可,請參閱 IAM 使用者指南 中的新增和移除IAM身分許可。如需KMS金鑰的詳細資訊,請參閱 AWS KMS 開發人員指南 中的 金鑰政策 AWS Key Management Service。
FAQs
如需 SageMaker Canvas FAQ AWS KMS 支援的常見問題解答,請參閱下列項目。
答:否。 SageMaker Canvas 可能會暫時快取您的金鑰或將其傳遞給其他 AWS 服務 (例如 Autopilot),但 SageMaker Canvas 不會保留您的KMS金鑰。
答:您使用者IAM的角色可能沒有使用該KMS金鑰的許可。若要授予您的使用者許可,請參閱必要條件。另一個可能的錯誤是,您的 Amazon S3 儲存貯體上有儲存貯體政策,需要使用與您在網域中指定的KMS金鑰不相符的特定KMS金鑰。請務必為 Amazon S3 儲存貯體和網域指定相同的KMS金鑰。
答:預設的 Amazon S3 儲存貯體遵循命名模式 s3://sagemaker-
。此儲存貯體中的{Region}
-{your-account-id}
Canvas/
資料夾存放 SageMaker Canvas 應用程式資料。
答:否,為您 SageMaker 建立此儲存貯體。
答: SageMaker Canvas 使用預設的 SageMaker Amazon S3 儲存貯體來儲存輸入資料集、模型成品和模型輸出的複本。
答:使用 SageMaker Canvas,您可以將自己的加密金鑰與 搭配使用 AWS KMS ,以建置迴歸、二進位和多類別分類和時間序列預測模型,以及使用模型進行批次推論。
答案:是。您必須為KMS金鑰提供額外的許可,才能執行加密的時間序列預測。如需如何修改金鑰政策以授予時間序列預測許可的詳細資訊,請參閱時間序列預測的先決條件。