Configuration de la prise en charge entre comptes pour les cartes de modèles Amazon SageMaker - Amazon SageMaker AI

Configuration de la prise en charge entre comptes pour les cartes de modèles Amazon SageMaker

Utilisez la prise en charge entre comptes dans Cartes de modèles Amazon SageMaker pour partager les cartes de modèles entre les comptes AWS. Le compte sur lequel les cartes de modèles sont créées est le compte de cartes de modèles. Les utilisateurs figurant dans le compte de cartes de modèles les partagent avec les comptes partagés. Les utilisateurs figurant dans un compte partagé peuvent mettre à jour les cartes de modèles ou créer des PDF à partir d'elles.

Les utilisateurs figurant dans le compte de cartes de modèles partagent leurs cartes de modèles via AWS Resource Access Manager (AWS RAM). AWS RAM vous aide à partager les ressources entre les comptes AWS. Pour une introduction à AWS RAM, consultez Qu'est-ce qu'AWS Resource Access Manager ?

Voici le processus permettant de partager les cartes de modèles :

  1. Un utilisateur figurant dans le compte de cartes de modèles configure le partage des cartes de modèles entre comptes à l'aide d'AWS Resource Access Manager.

  2. Si les cartes de modèles sont chiffrées à l'aide de clés AWS KMS, l'utilisateur qui configure le partage des modèles doit également fournir des autorisations AWS KMS aux utilisateurs figurant dans le compte partagé.

  3. Un utilisateur du compte partagé accepte l'invitation au partage de ressources.

  4. Un utilisateur figurant dans le compte partagé fournit aux autres utilisateurs des autorisations pour accéder aux cartes de modèles.

Si vous êtes un utilisateur dans le compte de cartes de modèles, consultez les sections suivantes :

Si vous êtes un utilisateur dans le compte partagé, consultez Configuration d'autorisations d'utilisateur IAM dans le compte partagé pour en savoir plus sur la configuration d'autorisations pour vous-même et pour les autres utilisateurs du compte.

Configuration du partage des cartes de modèles entre comptes

Utilisez AWS Resource Access Manager (AWS RAM) pour accorder aux utilisateurs de votre compte AWS l'accès pour consulter ou mettre à jour les cartes de modèles créées dans un autre compte AWS.

Pour configurer le partage des cartes de modèles, vous devez créer un partage de ressources. Un partage de ressources spécifie :

  • les ressources à partager,

  • qui ou quoi a accès aux ressources,

  • les autorisations gérées pour les ressources.

Pour plus d'informations sur les partages de ressources, consultez Termes et concepts pour AWS RAM. Nous vous recommandons de prendre le temps de comprendre AWS RAM sur le plan conceptuel avant de suivre le processus de création d'un partage de ressources.

Important

Vous devez être autorisé à créer un partage de ressources. Pour plus d'informations sur les autorisations, consultez Fonctionnement d'AWS RAM avec IAM.

Pour les procédures de création d'un partage de ressources et des informations supplémentaires à leur sujet, consultez Création d'un partage de ressources.

Lorsque vous suivez la procédure de création d'un partage de ressources, vous spécifiez sagemaker:ModelCard comme type de ressource. Vous devez également spécifier l'Amazon Resource Name (ARN) de la politique AWS RAM basée sur les ressources. Vous pouvez spécifier la politique par défaut ou la politique dotée d'autorisations supplémentaires pour créer un PDF de la carte de modèle.

Avec la politique AWSRAMPermissionSageMakerModelCards basée sur les ressources par défaut, les utilisateurs du compte partagé sont autorisés à effectuer les opérations suivantes :

Avec la politique AWSRAMPermissionSageMakerModelCardsAllowExport basée sur les ressources, les utilisateurs du compte partagé sont autorisés à effectuer toutes les actions précédentes. Ils sont également autorisés à créer une tâche d'exportation de carte de modèle et à la décrire via les opérations suivantes :

Les utilisateurs figurant dans le compte partagé peuvent créer une tâche d'exportation pour générer un PDF d'une carte de modèle. Ils peuvent également décrire une tâche d'exportation créée pour rechercher l'URI Amazon S3 du PDF.

Les cartes de modèles et les tâches d'exportation sont des ressources. Le compte de cartes de modèles possède les tâches d'exportation créées par un utilisateur dans le compte partagé. Par exemple, un utilisateur du compte A partage la carte de modèle X avec le compte partagé B. Un utilisateur du compte B crée une tâche d'exportation Y pour la carte de modèle X qui stocke la sortie dans un emplacement Amazon S3 spécifié par l'utilisateur du compte B. Même si le compte B a créé la tâche d'exportation Y, elle appartient au compte A.

Chaque compte AWS dispose de quotas de ressources. Pour en savoir plus sur les quotas associés aux cartes de modèles, consultez Points de terminaison et quotas Amazon SageMaker AI.

Configuration d’autorisations AWS KMS pour le compte partagé

Si les cartes de modèles que vous partagez ont été chiffrées à l'aide de clés AWS Key Management Service, vous devez également partager l'accès à ces clés avec le compte partagé. Dans le cas contraire, les utilisateurs du compte partagé ne peuvent pas consulter, mettre à jour ni exporter les cartes de modèles. Pour accéder à une présentation de AWS KMS, consultez AWS Key Management Service.

Pour fournir des autorisations AWS KMS aux utilisateurs du compte partagé, mettez à jour votre stratégie de clé avec la déclaration suivante :

{ "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" } } }

La déclaration précédente fournit aux utilisateurs du compte partagé les autorisations kms:Decrypt et kms:GenerateDataKey. Avec kms:Decrypt, les utilisateurs peuvent déchiffrer les cartes de modèles. Avec kms:GenerateDataKey, les utilisateurs peuvent chiffrer les cartes de modèles qu'ils mettent à jour ou les PDF qu'ils créent.

Obtention de réponses à votre invitation de partage de ressources

Après avoir créé un partage de ressources, les comptes partagés que vous avez spécifiés dans le partage de ressources reçoivent une invitation à le rejoindre. Ils doivent accepter l'invitation pour accéder aux ressources.

Pour en savoir plus sur l'acceptation d'une invitation de partage de ressources, consultez Utilisation de ressources AWS partagées dans le Guide de l'utilisateur AWS Resource Access Manager.

Configuration d'autorisations d'utilisateur IAM dans le compte partagé

Les informations suivantes supposent que vous avez accepté l'invitation de partage de ressources provenant du compte de cartes de modèles. Pour plus d'informations sur l'acceptation d'une invitation de partage de ressources, consultez Utilisation de ressources AWS partagées.

Vous et les autres utilisateurs de votre compte utilisez un rôle IAM pour accéder aux cartes de modèles partagées à partir du compte de cartes de modèles. Utilisez le modèle suivant pour modifier la politique du rôle IAM. Vous pouvez modifier le modèle en fonction de votre propre cas d'utilisation.

JSON
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sagemaker:DescribeModelCard", "sagemaker:UpdateModelCard", "sagemaker:CreateModelCardExportJob", "sagemaker:ListModelCardVersions", "sagemaker:DescribeModelCardExportJob" ], "Resource": [ "arn:aws:sagemaker:us-east-1:111122223333:model-card/example-model-card-name-0", "arn:aws:sagemaker:us-east-1:111122223333: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/*" } ] }

Pour accéder aux cartes de modèles chiffrées à l’aide d’AWS KMS, vous devez fournir aux utilisateurs de votre compte les autorisations AWS KMS suivantes.

{ "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" }