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.
Modification de la disponibilité du gestionnaire de rôles
Note
Amazon SageMaker Role Manager n'est plus ouvert aux nouveaux clients. Les clients existants peuvent continuer à utiliser le service normalement. AWS continue d'investir dans l'amélioration de la sécurité et de la disponibilité de Role Manager, mais nous ne prévoyons pas d'introduire de nouvelles fonctionnalités.
Outils natifs IAM, IAM Identity Center et infrastructure en tant que code
La combinaison de la création de rôles native AWS IAM et Infrastructure-as-Code ( AWS IAM Identity CenterCloudFormation, CDK) remplace Amazon Role Manager en couvrant ses fonctionnalités de base en matière de création de SageMaker rôles basée sur les personnes et de définition de la portée des autorisations basée sur les activités.
AWS Les outils natifs IAM gèrent la création de rôles d'exécution via la console IAM, l'interface de ligne de commande ou le SDK en fournissant le flux de travail standard permettant de créer des rôles avec la politique de confiance du principal de sagemaker.amazonaws.com service et d'associer des politiques gérées ou personnalisées.
AWS IAM Identity Center gère l'identité du personnel et la gestion centralisée des accès en fournissant des ensembles d'autorisations qui définissent un accès précis aux SageMaker ressources, en permettant une identité fédérée provenant de fournisseurs d'identité externes (Okta, Azure AD, Ping Identity) et une propagation fiable des identités avec Studio. SageMaker
IAM Access Analyzer permet une validation dynamique des politiques et la génération de politiques de moindre privilège en analysant les modèles d' CloudTrail accès réels et en recommandant des politiques affinées, en remplaçant les modèles statiques basés sur les activités de Role Manager par des recommandations de politiques basées sur l'utilisation.
Pour une gouvernance reproductible, CloudFormation les modèles CDK fournissent des définitions de rôles IAM contrôlées par version, vérifiables et répétables qui s'intègrent aux pipelines d'entreprise et aux processus d'évaluation de la sécurité. CI/CD
Remplacement du gestionnaire de rôles
Si votre flux de travail inclut l'accès à la console SageMaker AI (Configurations d'administration > Gestionnaire de rôles > Créer un rôle) ou l'utilisation de l'option « Créer un rôle à l'aide de l'assistant de création de rôle » lors de la création d'un domaine, d'un bloc-notes, d'une tâche de formation ou d'un modèle d'inférence, utilisez un autre chemin décrit dans la section Configuration des remplacements ci-dessous.
Aucun nettoyage n'est requis pour les rôles existants
Les rôles IAM précédemment créés par Role Manager sont des rôles IAM standard. Ils continuent à fonctionner indépendamment, sans aucune dépendance à l' Manager-specific exécution des rôles. Ces rôles :
-
Apparaissent dans la console IAM en tant que rôles IAM standard avec le préfixe
sagemaker- -
Peut être consulté, modifié ou supprimé directement depuis la console IAM
-
Faire en sorte que leurs politiques de confiance et d'autorisation soient intactes et opérationnelles
-
Aucune transformation, migration ou suppression n'est requise dans le cadre de cette transition
Remplacez les constructions du gestionnaire de rôles CDK (si elles sont utilisées)
Si vous avez utilisé les constructions CDK de @aws-cdk/aws-sagemaker-alpha Role Manager (les Activity classes Persona et), remplacez-les par des constructions standardaws-cdk-lib/aws-iam. Consultez la Infrastructure-as-Code section ci-dessous pour les modèles de remplacement.
Remplacement du flux de création de domaines Studio
Lors de la création d'un domaine SageMaker AI, Role Manager a été proposé comme option pour créer des rôles d'exécution lors de l'assistant d'intégration (« Créer un rôle à l'aide de l'assistant de création de rôle »). Suivez l'alternative ci-dessous :
Configuration de domaine personnalisée avec création de rôles de console IAM
Lors de la création d'un domaine personnalisé, vous pouvez créer un rôle d'exécution directement depuis la console IAM plutôt que d'utiliser le Gestionnaire de rôles.
Étape 1 : Création du rôle d'exécution dans IAM
-
Ouvrez la console IAM à l'adresse https://console.aws.amazon.com/iam/.
-
Choisissez Rôles, puis Créer un rôle.
-
Conservez le type d'entité de confiance comme AWS service.
-
Sous « Cas d'utilisation pour d'autres AWS services », recherchez et sélectionnez SageMaker AI.
-
Choisissez SageMaker AI — Exécution, puis cliquez sur Suivant.
-
La politique
AmazonSageMakerFullAccessgérée est automatiquement jointe. Choisissez Suivant. -
Entrez un nom de rôle (par exemple
AmazonSageMaker-ExecutionRole-CustomDomain) et une description. -
(Facultatif) Ajoutez des balises pour la gouvernance et le suivi.
-
Choisissez Créer un rôle et notez l'ARN du rôle.
Étape 2 : Utiliser le rôle lors de la création du domaine
-
Dans la console SageMaker AI, choisissez Configurations d'administration > Domaines > Créer un domaine.
-
Choisissez Configurer pour les organisations (Configuration personnalisée).
-
Sous Rôle d'exécution, choisissez Entrez un ARN de rôle IAM personnalisé et collez l'ARN de l'étape 1.
-
Effectuez les étapes de configuration de domaine restantes.
Consultez la section Comment utiliser les rôles d'exécution de l' SageMaker IA pour obtenir des instructions détaillées.
Utilisation AWS politiques gérées directement
AWS fournit des politiques gérées qui couvrent les SageMaker activités courantes. Associez-les directement à votre rôle d'exécution IAM :
| Cas d’utilisation | AWS politiques gérées à joindre |
|---|---|
| Développement général du ML (équivalent Data Scientist) | AmazonSageMakerFullAccess |
| Read-only accès pour monitoring/auditing | AmazonSageMakerReadOnly |
| Utilisateurs de Canvas | AmazonSageMakerCanvasFullAccess +
AmazonSageMakerCanvasAIServicesAccess |
| Exploitation des pipelines (équivalent MLOps) | AmazonSageMakerFullAccess +
AmazonSageMakerPipelinesIntegrations |
| Accès au Feature Store | AmazonSageMakerFeatureStoreAccess |
| Gouvernance des modèles | AmazonSageMakerModelGovernanceUseAccess |
| Registre des modèles | AmazonSageMakerModelRegistryFullAccess |
Consultez les politiques AWS gérées pour Amazon SageMaker AI pour obtenir la liste complète.
Utiliser la génération de politiques IAM Access Analyzer (pour le moindre privilège)
Utilisez IAM Access Analyzer pour générer des politiques de moindre privilège en fonction de l'activité d'accès réelle. CloudTrail Cela produit des politiques basées sur l'utilisation plus précises que les modèles statiques de Role Manager :
-
Activez la CloudTrail journalisation SageMaker de vos charges de travail (généralement déjà activée).
-
Exécutez les charges de travail avec une politique plus large (par exemple
AmazonSageMakerFullAccess) pendant une période représentative (30 à 90 jours recommandés). -
Générez une politique à partir d'IAM Access Analyzer :
-
Ouvrez la console IAM > Access Analyzer > Génération de politiques.
-
Sélectionnez le rôle à analyser.
-
Spécifiez le CloudTrail parcours et la période.
-
Passez en revue la politique générée, qui ne contient que les actions réellement utilisées.
-
-
Appliquez la politique générée pour remplacer la politique initiale plus large.
Cette approche remplace les modèles statiques de Role Manager par des politiques dynamiques qui reflètent les modèles d'utilisation réels, garantissant ainsi un véritable principe de moindre privilège sans curation manuelle.
Reportez-vous à la section Génération de politiques IAM Access Analyzer pour connaître les étapes détaillées.
Infrastructure-as-Code (CloudFormation)
Définissez les rôles SageMaker d'exécution CloudFormation pour une gestion des rôles répétable et contrôlée par version. L'exemple suivant doit être modifié en fonction de votre cas d'utilisation :
AWSTemplateFormatVersion: '2010-09-09' Description: SageMaker execution roles replacing Role Manager personas Resources: # Replaces Role Manager "SageMaker AI Compute" persona SageMakerComputeRole: Type: AWS::IAM::Role Properties: RoleName: sagemaker-compute-execution-role AssumeRolePolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Principal: Service: sagemaker.amazonaws.com Action: sts:AssumeRole ManagedPolicyArns: - arn:aws:iam::aws:policy/AmazonSageMakerFullAccess Policies: - PolicyName: S3DataAccess PolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Action: - s3:GetObject - s3:PutObject - s3:DeleteObject - s3:ListBucket Resource: - arn:aws:s3:::my-sagemaker-bucket - arn:aws:s3:::my-sagemaker-bucket/* Tags: - Key: Purpose Value: sagemaker-compute - Key: ManagedBy Value: cloudformation # Replaces Role Manager "Data Scientist" persona DataScientistRole: Type: AWS::IAM::Role Properties: RoleName: sagemaker-data-scientist-role AssumeRolePolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Principal: Service: sagemaker.amazonaws.com Action: sts:AssumeRole ManagedPolicyArns: - arn:aws:iam::aws:policy/AmazonSageMakerFullAccess - arn:aws:iam::aws:policy/AmazonSageMakerCanvasFullAccess - arn:aws:iam::aws:policy/AmazonSageMakerCanvasAIServicesAccess Policies: - PolicyName: GlueAccess PolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Action: - glue:CreateTable - glue:UpdateTable - glue:DeleteTable - glue:GetTable - glue:GetTables - glue:GetDatabase - glue:GetDatabases Resource: '*' Tags: - Key: Purpose Value: sagemaker-data-scientist - Key: ManagedBy Value: cloudformation # Replaces Role Manager "MLOps" persona MLOpsRole: Type: AWS::IAM::Role Properties: RoleName: sagemaker-mlops-role AssumeRolePolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Principal: Service: sagemaker.amazonaws.com Action: sts:AssumeRole ManagedPolicyArns: - arn:aws:iam::aws:policy/AmazonSageMakerFullAccess - arn:aws:iam::aws:policy/AmazonSageMakerPipelinesIntegrations - arn:aws:iam::aws:policy/AmazonS3FullAccess Tags: - Key: Purpose Value: sagemaker-mlops - Key: ManagedBy Value: cloudformation Outputs: ComputeRoleArn: Description: ARN of the SageMaker Compute execution role Value: !GetAtt SageMakerComputeRole.Arn DataScientistRoleArn: Description: ARN of the Data Scientist execution role Value: !GetAtt DataScientistRole.Arn MLOpsRoleArn: Description: ARN of the MLOps execution role Value: !GetAtt MLOpsRole.Arn
Infrastructure-as-Code (AWS CDK)
Remplacez les constructions CDK du gestionnaire de rôles (Persona,Activity) par des constructions IAM standard. L'exemple suivant doit être modifié en fonction de votre cas d'utilisation :
import * as cdk from 'aws-cdk-lib'; import * as iam from 'aws-cdk-lib/aws-iam'; import { Construct } from 'constructs'; export class SageMakerRolesStack extends cdk.Stack { constructor(scope: Construct, id: string, props?: cdk.StackProps) { super(scope, id, props); // Replaces Role Manager "SageMaker AI Compute" persona const computeRole = new iam.Role(this, 'SageMakerComputeRole', { roleName: 'sagemaker-compute-execution-role', assumedBy: new iam.ServicePrincipal('sagemaker.amazonaws.com'), managedPolicies: [ iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonSageMakerFullAccess'), ], }); // Replaces Role Manager "Data Scientist" persona const dataScientistRole = new iam.Role(this, 'DataScientistRole', { roleName: 'sagemaker-data-scientist-role', assumedBy: new iam.ServicePrincipal('sagemaker.amazonaws.com'), managedPolicies: [ iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonSageMakerFullAccess'), iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonSageMakerCanvasFullAccess'), iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonSageMakerCanvasAIServicesAccess'), ], }); // Add custom inline policy for Glue access // (replaces "Manage Glue Tables" ML activity) dataScientistRole.addToPolicy(new iam.PolicyStatement({ effect: iam.Effect.ALLOW, actions: [ 'glue:CreateTable', 'glue:UpdateTable', 'glue:DeleteTable', 'glue:GetTable', 'glue:GetTables', 'glue:GetDatabase', 'glue:GetDatabases', ], resources: ['*'], })); // Replaces Role Manager "MLOps" persona const mlopsRole = new iam.Role(this, 'MLOpsRole', { roleName: 'sagemaker-mlops-role', assumedBy: new iam.ServicePrincipal('sagemaker.amazonaws.com'), managedPolicies: [ iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonSageMakerFullAccess'), iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonSageMakerPipelinesIntegrations'), iam.ManagedPolicy.fromAwsManagedPolicyName('AmazonS3FullAccess'), ], }); // Example: Scope down with VPC conditions // (replaces Role Manager VPC customization) computeRole.addToPolicy(new iam.PolicyStatement({ effect: iam.Effect.ALLOW, actions: [ 'ec2:CreateNetworkInterface', 'ec2:CreateNetworkInterfacePermission', 'ec2:DeleteNetworkInterface', 'ec2:DeleteNetworkInterfacePermission', 'ec2:DescribeNetworkInterfaces', 'ec2:DescribeVpcs', 'ec2:DescribeDhcpOptions', 'ec2:DescribeSubnets', 'ec2:DescribeSecurityGroups', ], resources: ['*'], conditions: { StringEquals: { 'ec2:Vpc': 'arn:aws:ec2:us-east-1:123456789012:vpc/vpc-xxxxxxxx', }, }, })); } }