Politiques gérées AWS pour les projets SageMaker et JumpStart - Amazon SageMaker

Politiques gérées AWS pour les projets SageMaker et JumpStart

Ces politiques gérées AWS ajoutent des autorisations pour utiliser des modèles de projet Amazon SageMaker intégrés et des solutions JumpStart. Les politiques sont disponibles dans votre compte AWS et sont utilisés par les rôles d'exécution créés à partir de la console SageMaker.

Les projets SageMaker et JumpStart utilisent AWS Service Catalog pour allouer des ressources AWS dans les comptes des clients. Certaines ressources créées doivent assumer un rôle d'exécution. Par exemple, si AWS Service Catalog crée un pipeline CodePipeline pour le compte d'un client pour un projet de machine learning CI/CD SageMaker, ce pipeline nécessite un rôle IAM.

Le rôle AmazonSageMakerServiceCatalogProductsLaunchRole possède les autorisations nécessaires pour lancer le portefeuille de produits SageMaker à partir d'AWS Service Catalog. Le rôle AmazonSageMakerServiceCatalogProductsUseRole possède les autorisations nécessaires pour utiliser le portefeuille de produits SageMaker à partir d'AWS Service Catalog. Le rôle AmazonSageMakerServiceCatalogProductsLaunchRole transmet un rôle AmazonSageMakerServiceCatalogProductsUseRole pour les ressources de produits AWSService Catalog allouées.

Politique gérée AWS : AmazonSageMakerAdmin-ServiceCatalogProductsServiceRolePolicy

Cette politique de fonction de service est utilisée par le service AWS Service Catalog pour allouer des produits à partir du portefeuille Amazon SageMaker. La politique accorde des autorisations à un ensemble de services AWS connexes, y compris AWS CodePipeline, AWS CodeBuild, AWS CodeCommit, AWS Glue, Amazon CloudFront et d'autres.

La politique AmazonSageMakerAdmin-ServiceCatalogProductsServiceRolePolicy est destinée à être utilisée par le rôle AmazonSageMakerServiceCatalogProductsLaunchRole créé à partir de la console SageMaker. La politique ajoute des autorisations pour allouer des ressources AWS pour les projets SageMaker et JumpStart à l'aide de AWS Service Catalog sur le compte d'un client.

Détails des autorisations

Cette politique inclut les autorisations suivantes.

  • apigateway – Autorise le rôle à appeler les points de terminaison API Gateway étiquetés avec sagemaker:launch-source.

  • cloudformation – Autorise AWS Service Catalog à créer, à mettre à jour et à supprimer des piles CloudFormation.

  • codebuild – Autorise le rôle assumé par AWS Service Catalog et transmis à CloudFormation à créer, à mettre à jour et à supprimer des projets CodeBuild.

  • codecommit – Autorise le rôle assumé par AWS Service Catalog et transmis à CloudFormation à créer, à mettre à jour et à supprimer des référentiels CodeCommit.

  • codepipeline – Autorise le rôle assumé par AWS Service Catalog et transmis à CloudFormation à créer, à mettre à jour et à supprimer CodePipelines.

  • codestar-connections – Autorise le rôle à transmettre des connexions AWS CodeStar.

  • cognito-idp – Autorise le rôle à créer, à mettre à jour et à supprimer des groupes et des groupes d'utilisateurs.

  • ecr – Autorise le rôle assumé par AWS Service Catalog et transmis à CloudFormation à créer et à supprimer des référentiels Amazon ECR.

  • events – Autorise le rôle assumé par AWS Service Catalog et transmis à CloudFormation à créer et à supprimer des règles EventBridge. Utilisé pour relier les différents composants du pipeline CI/CD.

  • firehose – Autorise le rôle à interagir avec les flux Kinesis Data Firehose.

  • glue – Autorise le rôle à interagir avec AWS Glue.

  • iam – Autorise le rôle à transmettre les rôles préfixés par AmazonSageMakerServiceCatalog. Cela est nécessaire lorsque Projects alloue un produit AWS Service Catalog, car un rôle doit être transmis à AWS Service Catalog.

  • lambda – Autorise le rôle à interagir avec AWS Lambda.

  • logs – Autorise le rôle à créer, à supprimer et à accéder à des flux de journaux.

  • s3 – Autorise le rôle assumé par AWS Service Catalog et transmis à CloudFormation à accéder aux compartiments Amazon S3 où le code du modèle Project est stocké.

  • sagemaker – Autorise le rôle à interagir avec divers services SageMaker. Cela se fait à la fois dans CloudFormation pendant l'approvisionnement des modèles, ainsi que dans CodeBuild pendant l'exécution du pipeline CI/CD.

  • states – Autorise le rôle à créer, à supprimer et à mettre à jour les fonctions d'étape préfixées par sagemaker.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "apigateway:GET", "apigateway:POST", "apigateway:PUT", "apigateway:PATCH", "apigateway:DELETE" ], "Resource": "*", "Condition": { "StringLike": { "aws:ResourceTag/sagemaker:launch-source": "*" } } }, { "Effect": "Allow", "Action": [ "apigateway:POST" ], "Resource": "*", "Condition": { "ForAnyValue:StringLike": { "aws:TagKeys": [ "sagemaker:launch-source" ] } } }, { "Effect": "Allow", "Action": [ "apigateway:PATCH" ], "Resource": [ "arn:aws:apigateway:*::/account" ] }, { "Effect": "Allow", "Action": [ "cloudformation:CreateStack", "cloudformation:UpdateStack", "cloudformation:DeleteStack" ], "Resource": "arn:aws:cloudformation:*:*:stack/SC-*", "Condition": { "ArnLikeIfExists": { "cloudformation:RoleArn": [ "arn:aws:sts::*:assumed-role/AmazonSageMakerServiceCatalog*" ] } } }, { "Effect": "Allow", "Action": [ "cloudformation:DescribeStackEvents", "cloudformation:DescribeStacks" ], "Resource": "arn:aws:cloudformation:*:*:stack/SC-*" }, { "Effect": "Allow", "Action": [ "cloudformation:GetTemplateSummary", "cloudformation:ValidateTemplate" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "codebuild:CreateProject", "codebuild:DeleteProject", "codebuild:UpdateProject" ], "Resource": [ "arn:aws:codebuild:*:*:project/sagemaker-*" ] }, { "Effect": "Allow", "Action": [ "codecommit:CreateCommit", "codecommit:CreateRepository", "codecommit:DeleteRepository", "codecommit:GetRepository", "codecommit:TagResource" ], "Resource": [ "arn:aws:codecommit:*:*:sagemaker-*" ] }, { "Effect": "Allow", "Action": [ "codecommit:ListRepositories" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "codepipeline:CreatePipeline", "codepipeline:DeletePipeline", "codepipeline:GetPipeline", "codepipeline:GetPipelineState", "codepipeline:StartPipelineExecution", "codepipeline:TagResource", "codepipeline:UpdatePipeline" ], "Resource": [ "arn:aws:codepipeline:*:*:sagemaker-*" ] }, { "Effect": "Allow", "Action": [ "cognito-idp:CreateUserPool" ], "Resource": "*", "Condition": { "ForAnyValue:StringLike": { "aws:TagKeys": [ "sagemaker:launch-source" ] } } }, { "Effect": "Allow", "Action": [ "cognito-idp:CreateGroup", "cognito-idp:CreateUserPoolDomain", "cognito-idp:CreateUserPoolClient", "cognito-idp:DeleteGroup", "cognito-idp:DeleteUserPool", "cognito-idp:DeleteUserPoolClient", "cognito-idp:DeleteUserPoolDomain", "cognito-idp:DescribeUserPool", "cognito-idp:DescribeUserPoolClient", "cognito-idp:UpdateUserPool", "cognito-idp:UpdateUserPoolClient" ], "Resource": "*", "Condition": { "StringLike": { "aws:ResourceTag/sagemaker:launch-source": "*" } } }, { "Effect": "Allow", "Action": [ "ecr:CreateRepository", "ecr:DeleteRepository" ], "Resource": [ "arn:aws:ecr:*:*:repository/sagemaker-*" ] }, { "Effect": "Allow", "Action": [ "events:DescribeRule", "events:DeleteRule", "events:DisableRule", "events:EnableRule", "events:PutRule", "events:PutTargets", "events:RemoveTargets" ], "Resource": [ "arn:aws:events:*:*:rule/sagemaker-*" ] }, { "Effect": "Allow", "Action": [ "firehose:CreateDeliveryStream", "firehose:DeleteDeliveryStream", "firehose:DescribeDeliveryStream", "firehose:StartDeliveryStreamEncryption", "firehose:StopDeliveryStreamEncryption", "firehose:UpdateDestination" ], "Resource": "arn:aws:firehose:*:*:deliverystream/sagemaker-*" }, { "Effect": "Allow", "Action": [ "glue:CreateDatabase", "glue:DeleteDatabase" ], "Resource": [ "arn:aws:glue:*:*:catalog", "arn:aws:glue:*:*:database/sagemaker-*", "arn:aws:glue:*:*:table/sagemaker-*", "arn:aws:glue:*:*:userDefinedFunction/sagemaker-*" ] }, { "Effect": "Allow", "Action": [ "glue:CreateClassifier", "glue:DeleteClassifier", "glue:DeleteCrawler", "glue:DeleteJob", "glue:DeleteTrigger", "glue:DeleteWorkflow", "glue:StopCrawler" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "glue:CreateWorkflow" ], "Resource": [ "arn:aws:glue:*:*:workflow/sagemaker-*" ] }, { "Effect": "Allow", "Action": [ "glue:CreateJob" ], "Resource": [ "arn:aws:glue:*:*:job/sagemaker-*" ] }, { "Effect": "Allow", "Action": [ "glue:CreateCrawler", "glue:GetCrawler" ], "Resource": [ "arn:aws:glue:*:*:crawler/sagemaker-*" ] }, { "Effect": "Allow", "Action": [ "glue:CreateTrigger", "glue:GetTrigger" ], "Resource": [ "arn:aws:glue:*:*:trigger/sagemaker-*" ] }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::*:role/service-role/AmazonSageMakerServiceCatalog*" ] }, { "Effect": "Allow", "Action": [ "lambda:AddPermission", "lambda:CreateFunction", "lambda:DeleteFunction", "lambda:GetFunction", "lambda:GetFunctionConfiguration", "lambda:InvokeFunction", "lambda:RemovePermission" ], "Resource": [ "arn:aws:lambda:*:*:function:sagemaker-*" ] }, { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DeleteLogGroup", "logs:DeleteLogStream", "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:PutRetentionPolicy" ], "Resource": [ "arn:aws:logs:*:*:log-group:/aws/apigateway/AccessLogs/*", "arn:aws:logs:*:*:log-group::log-stream:*" ] }, { "Effect": "Allow", "Action": "s3:GetObject", "Resource": "*", "Condition": { "StringEquals": { "s3:ExistingObjectTag/servicecatalog:provisioning": "true" } } }, { "Effect": "Allow", "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::sagemaker-*" ] }, { "Effect": "Allow", "Action": [ "s3:CreateBucket", "s3:DeleteBucket", "s3:DeleteBucketPolicy", "s3:GetBucketPolicy", "s3:PutBucketAcl", "s3:PutBucketNotification", "s3:PutBucketPolicy", "s3:PutBucketPublicAccessBlock", "s3:PutBucketLogging", "s3:PutEncryptionConfiguration", "s3:PutBucketTagging", "s3:PutObjectTagging" ], "Resource": "arn:aws:s3:::sagemaker-*" }, { "Effect": "Allow", "Action": [ "sagemaker:CreateEndpoint", "sagemaker:CreateEndpointConfig", "sagemaker:CreateModel", "sagemaker:CreateWorkteam", "sagemaker:DeleteEndpoint", "sagemaker:DeleteEndpointConfig", "sagemaker:DeleteModel", "sagemaker:DeleteWorkteam", "sagemaker:DescribeModel", "sagemaker:DescribeEndpointConfig", "sagemaker:DescribeEndpoint", "sagemaker:DescribeWorkteam", "sagemaker:CreateCodeRepository", "sagemaker:DescribeCodeRepository", "sagemaker:UpdateCodeRepository", "sagemaker:DeleteCodeRepository" ], "Resource": [ "arn:aws:sagemaker:*:*:*" ] }, { "Action": [ "sagemaker:CreateImage", "sagemaker:DeleteImage", "sagemaker:DescribeImage", "sagemaker:UpdateImage", "sagemaker:ListTags" ], "Resource": [ "arn:aws:sagemaker:*:*:image/*" ], "Effect": "Allow" }, { "Effect": "Allow", "Action": [ "states:CreateStateMachine", "states:DeleteStateMachine", "states:UpdateStateMachine" ], "Resource": [ "arn:aws:states:*:*:stateMachine:sagemaker-*" ] }, { "Effect": "Allow", "Action": "codestar-connections:PassConnection", "Resource": "arn:aws:codestar-connections:*:*:connection/*", "Condition": { "StringEquals": { "codestar-connections:PassedToService": "codepipeline.amazonaws.com" } } } ] }

Amazon SageMaker met à jour les politiques gérées AWS dans AWS Service Catalog

Découvrez les détails sur les mises à jour de politiques gérées AWS pour Amazon SageMaker depuis que ce service a commencé à suivre ces modifications. Pour obtenir des alertes automatiques concernant les modifications apportées à cette page, abonnez-vous au flux RSS de la page d'historique de documents SageMaker.

Modification Description Date

AmazonSageMakerAdmin-ServiceCatalogProductsServiceRolePolicy Version 3 – Mise à jour d'une politique existante

Ajout de nouvelles autorisations pour sagemaker.

Création, lecture, lise à jour et suppression des images SageMaker.

15 septembre 2021

AmazonSageMakerAdmin-ServiceCatalogProductsServiceRolePolicy Version 2 – Mise à jour d'une politique existante

Ajout de nouvelles autorisations pour sagemaker et codestar-connections.

Création, lecture, mise à jour et suppression des référentiels de code.

Transmission des connexions AWS CodeStar à AWS CodePipeline.

1er juillet 2021

SageMaker a démarré le suivi des modifications

SageMaker a commencé à suivre les modifications pour ses politiques gérées AWS dans AWS Service Catalog.

  • AmazonSageMakerAdmin-ServiceCatalogProductsServiceRolePolicy

17 juin 2021