本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定 Amazon SageMaker Model Card 的跨帳戶支援
使用 Amazon SageMaker Model Card 中的跨帳戶支援,在 AWS 帳戶之間共用模型卡。建立模型卡的帳戶是模型卡帳戶。模型卡帳戶中的使用者與共用帳戶共享它們。共用帳戶中的使用者可以更新模型卡或PDFs建立模型卡。
模型卡帳戶中的使用者透過 AWS Resource Access Manager (AWS RAM) 共用其模型卡。 AWS RAM 可協助您跨 AWS 帳戶共用資源。如需 的簡介 AWS RAM,請參閱什麼是 AWS Resource Access Manager?
以下是共享模型卡的過程:
-
模型卡帳戶中的使用者使用 AWS Resource Access Manager設定跨帳戶模型卡共享。
-
如果模型卡使用 AWS KMS 金鑰加密,則使用者設定模型共用也必須為共用帳戶中的使用者提供 AWS KMS 許可。
-
共用帳戶中的使用者接受資源共用的邀請。
-
共用帳戶中的使用者為其他使用者提供了存取模型卡的許可。
如果您是模型卡帳戶的使用者,請參閱以下章節:
如果您是共用帳戶的使用者,請參閱在共用帳戶中設定IAM使用者許可關於為自己和帳戶中其他使用者設定許可的相關資訊。
設定跨帳戶模型卡分享
使用 AWS Resource Access Manager (AWS RAM) 授予您 AWS 帳戶中的使用者檢視或更新在不同 AWS 帳戶中建立的模型卡的存取權。
若要設定模型卡共用,您必須建立資源共用。資源共享指定:
-
正在共享的資源
-
誰或什麼有權存取資源
-
資源的受管許可
如需有關資源共用的更多相關資訊,請參閱AWS RAM詞彙和概念。我們建議您在進行建立資源共享的程序之前,先花時間 AWS RAM 以概念方式了解。
重要
您必須擁有許可才能建立資源共用。如需許可的詳細資訊,請參閱如何使用 AWS RAM IAM。
如需建立資源共用的程序及其相關資訊,請參閱建立資源共用。
當您執行建立資源共用的程序時,您指定sagemaker:ModelCard
為資源類型。您還必須指定 AWS RAM 資源型政策的 Amazon Resource Number (ARN)。您可以指定預設政策,或具有建立模型卡 PDF 之額外許可的政策。
使用預設AWSRAMPermissionSageMakerModelCards
資源型政策,共用帳戶中的使用者具有執行以下作業的許可:
使用AWSRAMPermissionSageMakerModelCardsAllowExport
資源型政策,共用帳戶中的使用者擁有執行上述所有動作的許可。他們還具有建立模型卡匯出任務的許可,並透過以下操作對其進行描述:
共用帳戶中的使用者可以建立匯出任務,以產生模型卡PDF的 。他們也可以描述為尋找 Amazon S3 而建立PDF的匯出任務URI。
模型卡和匯出任務為資源。模型卡帳戶擁有使用者在共用帳戶中建立的匯出任務。例如,帳戶 A 中的使用者與共用帳戶 B 共用模型卡 X。帳戶 B 中的使用者會為模型卡 X 建立匯出任務 Y,該模型卡 X 將輸出存放在使用者帳戶 B 指定的 Amazon S3 位置。即使帳戶 B 建立了匯出任務 Y,其仍屬於帳戶 A。
每個 AWS 帳戶都有資源配額。如需與模型卡相關的配額資訊,請參閱 Amazon SageMaker 端點和配額 。
設定共用帳戶的 AWS KMS 許可
如果您共用的模型卡已使用 AWS Key Management Service 金鑰加密,您也需要與共用帳戶共用金鑰的存取權。否則,共用帳戶中的使用者將無法檢視、更新或匯出模型卡。如需 的概觀 AWS KMS,請參閱 AWS Key Management Service。
若要提供 AWS KMS 許可給共用帳戶中的使用者,請使用下列陳述式更新您的金鑰政策:
{ "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::
shared-account-id
::role/example-IAM-role
" ] }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt", ] "Resource": "arn:aws:kms:AWS-Region-of-model-card-account
:model-card-account-id
:key/AWS KMS-key-id
" "Condition": { "Bool": {"kms:GrantIsForAWSResource": true }, "StringEquals": { "kms:ViaService": [ "sagemaker.AWS-Region
.amazonaws.com", "s3.AWS-Region
.amazonaws.com" ], }, "StringLike": { "kms:EncryptionContext:aws:sagemaker:model-card-arn": "arn:aws:sagemaker:AWS-Region
:model-card-account-id
:model-card/model-card-name
" } } }
上述陳述式為共用帳戶中的使用者提供kms:Decrypt
和kms:GenerateDataKey
許可。使用kms:Decrypt
,使用者可以解密模型卡。透過 kms:GenerateDataKey
,使用者可以加密他們更新的模型卡或他們建立PDFs的 。
取得資源共用邀請的回應
建立資源共用之後,您在資源共用中指定的共用帳戶會收到加入該共用帳號的邀請。他們必須接受邀請才能存取資源。
如需接受資源共用邀請的相關資訊,請參閱 AWS Resource Access Manager 使用者指南中的使用共用 AWS 資源。
在共用帳戶中設定IAM使用者許可
以下資訊假設您已接受來自模型卡帳戶的資源共用邀請。如需接受資源共用邀請的詳細資訊,請參閱使用共用 AWS 資源。
您和帳戶中的其他使用者會使用 IAM角色來存取從模型卡帳戶共用的模型卡。使用下列範本變更IAM角色的政策。您可以針對自己的使用案例修改範本。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sagemaker:DescribeModelCard", "sagemaker:UpdateModelCard", "sagemaker:CreateModelCardExportJob", "sagemaker:ListModelCardVersions", "sagemaker:DescribeModelCardExportJob" ], "Resource": [ "arn:aws:sagemaker:
AWS-Region
:AWS-model-card-account-id
:model-card/example-model-card-name-0
", "arn:aws:sagemaker:AWS-Region
:AWS-model-card-account-id
:model-card/example-model-card-name-1
/*" ] }, { "Effect": "Allow", "Action": "s3:PutObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket-storing-the-pdf-of-the-model-card
/model-card-name
/*" } ] }
若要存取使用 加密的模型卡 AWS KMS,您必須為帳戶中的使用者提供下列 AWS KMS 許可。
{ "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt", ], "Resource": "arn:aws:kms:
AWS-Region
:AWS-account-id-where-the-model-card-is-created
:key/AWS Key Management Service-key-id
" }