Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Accès entre comptes au magasin hors connexion
Amazon SageMaker Feature Store permet aux utilisateurs de créer un groupe de fonctionnalités dans un compte (compte A) et de le configurer avec un magasin hors ligne à l'aide d'un compartiment Amazon S3 dans un autre compte (compte B). Vous pouvez configurer cela à l'aide des étapes décrites dans la section suivante.
Rubriques
Étape 1 : Configurer le rôle d'accès au magasin hors connexion dans le compte A
Étape 2 : Configurer un compartiment Amazon S3 de magasin hors connexion dans le compte B
Étape 3 : Configurer une clé de chiffrement AWS KMS du magasin hors connexion dans le compte A
Étape 4 : Créer un groupe de fonctionnalités dans le compte A
Étape 1 : Configurer le rôle d'accès au magasin hors connexion dans le compte A
Tout d'abord, configurez un rôle pour Amazon SageMaker Feature Store afin d'écrire les données dans le magasin hors ligne. Le plus simple consiste à créer un rôle à l'aide de la stratégie AmazonSageMakerFeatureStoreAccess
ou d'utiliser un rôle existant auquel la stratégie AmazonSageMakerFeatureStoreAccess
est déjà attachée. Ce document désigne cette stratégie sous Account-A-Offline-Feature-Store-Role-ARN
.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetBucketAcl", "s3:PutObjectAcl" ], "Resource": [ "arn:aws:s3:::*SageMaker*", "arn:aws:s3:::*Sagemaker*", "arn:aws:s3:::*sagemaker*" ] } ] }
L'extrait de code précédent montre la stratégie AmazonSageMakerFeatureStoreAccess
. La section Resource
de la stratégie est étendue par défaut aux compartiments S3 dont les noms contiennent SageMaker
, Sagemaker
ou sagemaker
. Autrement dit, le compartiment S3 du magasin hors connexion utilisé doit suivre cette convention de dénomination. Si ce n'est pas votre cas, ou si vous voulez limiter encore la ressource, vous pouvez copier et coller cette politique dans votre politique de compartiment Amazon S3 dans la console, personnaliser la section Resource
comme arn:aws:s3:::your-offline-store-bucket-name
, puis l'attacher au rôle.
En outre, ce rôle doit être associé à AWS KMS des autorisations. Au minimum, il nécessite que l'autorisation kms:GenerateDataKey
puisse écrire dans la boutique hors ligne à l'aide de votre clé gérée par le client. Consultez l'étape 3 pour savoir pourquoi le scénario entre comptes requiert une clé gérée par le client, et comment la configurer. L'exemple suivant illustre une stratégie en ligne :
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "kms:GenerateDataKey" ], "Resource": "arn:aws:kms:*:Account-A-Account-Id:key/*" } ] }
La section Resource
de cette stratégie est étendue à n'importe quelle clé du compte A. Pour élargie encore l'étendue, après avoir configuré la clé KMS de la boutique hors ligne à l'étape 3, revenez à cette stratégie et remplacez-la par l'ARN de clé.
Étape 2 : Configurer un compartiment Amazon S3 de magasin hors connexion dans le compte B
Créez un compartiment Amazon S3 dans le compte B. Si vous utilisez la politique AmazonSageMakerFeatureStoreAccess
par défaut, le nom du compartiment doit inclure SageMaker
, Sagemaker
ou sagemaker
. Modifiez la stratégie de compartiment, comme illustré dans l'exemple suivant, afin d'autoriser le compte A à lire et écrire des objets.
Ce document désigne l'exemple de stratégie de compartiment suivant sous Account-B-Offline-Feature-Store-Bucket
.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "S3CrossAccountBucketAccess", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:PutObjectAcl", "s3:GetBucketAcl" ], "Principal": { "AWS": [ "*Account-A-Offline-Feature-Store-Role-ARN*" ], }, "Resource": [ "arn:aws:s3:::offline-store-bucket-name/*", "arn:aws:s3:::offline-store-bucket-name" ] } ] }
Dans la politique précédente, le principal est Account-A-Offline-Feature-Store-Role-ARN
le rôle créé dans le compte A à l'étape 1 et fourni à Amazon SageMaker Feature Store pour qu'il écrive sur le magasin hors ligne. Vous pouvez fournir plusieurs rôles ARN sous Principal
.
Étape 3 : Configurer une clé de chiffrement AWS KMS du magasin hors connexion dans le compte A
Amazon SageMaker Feature Store garantit que le chiffrement côté serveur est toujours activé pour les objets Amazon S3 dans le magasin hors ligne. Pour les cas d'utilisation entre comptes, vous devez fournir une clé gérée par le client afin de pouvoir contrôler qui peut écrire dans le magasin hors connexion (dans ce cas, Account-A-Offline-Feature-Store-Role-ARN
à partir du compte A) et qui peut lire à partir du magasin hors connexion (dans ce cas, les identités issues du compte B).
Ce document désigne l'exemple de stratégie de clé suivant sous Account-A-Offline-Feature-Store-KMS-Key-ARN
.
{ "Version": "2012-10-17", "Id": "key-consolepolicy-3", "Statement": [ { "Sid": "Enable IAM User Permissions", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::Account-A-Account-Id:root" }, "Action": "kms:*", "Resource": "*" }, { "Sid": "Allow access for Key Administrators", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::Account-A-Account-Id:role/Administrator", ] }, "Action": [ "kms:Create*", "kms:Describe*", "kms:Enable*", "kms:List*", "kms:Put*", "kms:Update*", "kms:Revoke*", "kms:Disable*", "kms:Get*", "kms:Delete*", "kms:TagResource", "kms:UntagResource", "kms:ScheduleKeyDeletion", "kms:CancelKeyDeletion" ], "Resource": "*" }, { "Sid": "Allow Feature Store to get information about the customer managed key", "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": [ "kms:Describe*", "kms:Get*", "kms:List*" ], "Resource": "*" }, { "Sid": "Allow use of the key", "Effect": "Allow", "Principal": { "AWS": [ "*Account-A-Offline-Feature-Store-Role-ARN*", "*arn:aws:iam::Account-B-Account-Id:root*" ] }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:DescribeKey", "kms:CreateGrant", "kms:RetireGrant", "kms:ReEncryptFrom", "kms:ReEncryptTo", "kms:GenerateDataKey", "kms:ListAliases", "kms:ListGrants" ], "Resource": "*", } ] }
Étape 4 : Créer un groupe de fonctionnalités dans le compte A
Ensuite, créez le groupe de fonctionnalités dans le compte A, avec un compartiment Amazon S3 de magasin hors connexion dans le compte B. Pour ce faire, fournissez les paramètres suivants pour RoleArn
, OfflineStoreConfig.S3StorageConfig.KmsKeyId
et OfflineStoreConfig.S3StorageConfig.S3Uri
, respectivement :
-
Fournissez
Account-A-Offline-Feature-Store-Role-ARN
en tant queRoleArn
. -
Fournissez
Account-A-Offline-Feature-Store-KMS-Key-ARN
pourOfflineStoreConfig.S3StorageConfig.KmsKeyId
. -
Fournissez
Account-B-Offline-Feature-Store-Bucket
pourOfflineStoreConfig.S3StorageConfig.S3Uri
.