As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Instale políticas e permissões para ambientes Jupyter locais
Você precisará configurar as permissões e políticas necessárias para agendar trabalhos no notebook em um ambiente Jupyter local. O IAM usuário precisa de permissões para enviar trabalhos SageMaker e a IAM função que o próprio trabalho do notebook assume precisa de permissões para acessar recursos, dependendo das tarefas do trabalho. A seguir, você encontrará instruções sobre como configurar as permissões e políticas necessárias.
Você precisará instalar dois conjuntos de permissões. O diagrama a seguir mostra a estrutura de permissão para você agendar trabalhos do notebook em um ambiente Jupyter local. O IAM usuário precisa configurar IAM permissões para enviar trabalhos para SageMaker o. Depois que o usuário envia o trabalho do notebook, o trabalho em si assume uma IAM função que tem permissões para acessar recursos, dependendo das tarefas do trabalho.
As seções a seguir ajudam você a instalar as políticas e permissões necessárias tanto para o IAM usuário quanto para a função de execução do trabalho.
Permissões de usuário do IAM
Permissões para enviar trabalhos para SageMaker
Para adicionar permissões para enviar trabalhos, conclua as seguintes etapas:
-
Abra o IAMconsole
. -
Selecione Usuários no painel do lado esquerdo.
-
Encontre o IAM usuário para seu trabalho no notebook e escolha o nome do usuário.
-
Escolha Adicionar permissões e depois Criar política em linha no menu suspenso.
-
Escolha a JSONguia.
-
Copie e cole a política a seguir:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EventBridgeSchedule", "Effect": "Allow", "Action": [ "events:TagResource", "events:DeleteRule", "events:PutTargets", "events:DescribeRule", "events:EnableRule", "events:PutRule", "events:RemoveTargets", "events:DisableRule" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/sagemaker:is-scheduling-notebook-job": "true" } } }, { "Sid": "IAMPassrole", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/*", "Condition": { "StringLike": { "iam:PassedToService": [ "sagemaker.amazonaws.com", "events.amazonaws.com" ] } } }, { "Sid": "IAMListRoles", "Effect": "Allow", "Action": "iam:ListRoles", "Resource": "*" }, { "Sid": "S3ArtifactsAccess", "Effect": "Allow", "Action": [ "s3:PutEncryptionConfiguration", "s3:CreateBucket", "s3:PutBucketVersioning", "s3:ListBucket", "s3:PutObject", "s3:GetObject", "s3:GetEncryptionConfiguration", "s3:DeleteObject", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::sagemaker-automated-execution-*" ] }, { "Sid": "S3DriverAccess", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetObject", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::sagemakerheadlessexecution-*" ] }, { "Sid": "SagemakerJobs", "Effect": "Allow", "Action": [ "sagemaker:DescribeTrainingJob", "sagemaker:StopTrainingJob", "sagemaker:DescribePipeline", "sagemaker:CreateTrainingJob", "sagemaker:DeletePipeline", "sagemaker:CreatePipeline" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/sagemaker:is-scheduling-notebook-job": "true" } } }, { "Sid": "AllowSearch", "Effect": "Allow", "Action": "sagemaker:Search", "Resource": "*" }, { "Sid": "SagemakerTags", "Effect": "Allow", "Action": [ "sagemaker:ListTags", "sagemaker:AddTags" ], "Resource": [ "arn:aws:sagemaker:*:*:pipeline/*", "arn:aws:sagemaker:*:*:space/*", "arn:aws:sagemaker:*:*:training-job/*", "arn:aws:sagemaker:*:*:user-profile/*" ] }, { "Sid": "ECRImage", "Effect": "Allow", "Action": [ "ecr:GetAuthorizationToken", "ecr:BatchGetImage" ], "Resource": "*" } ] }
AWS KMS política de permissão (opcional)
Por padrão, os buckets de entrada e saída do Amazon S3 são criptografados usando criptografia do lado do servidor, mas você pode especificar uma KMS chave personalizada para criptografar seus dados no bucket de saída do Amazon S3 e no volume de armazenamento anexado à tarefa do notebook.
Se você quiser usar uma KMS chave personalizada, repita as instruções anteriores, anexando a política a seguir e forneça sua própria KMS chaveARN.
{ "Version": "2012-10-17", "Statement": [ { "Effect":"Allow", "Action":[ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey", "kms:CreateGrant" ], "Resource":"your_KMS_key_ARN" } ] }
Permissões da função de execução de trabalhos
Relações de confiança
Para modificar as relações de confiança da função de execução do trabalho, conclua as seguintes etapas:
-
Abra o IAMconsole
. -
Selecione Funções no painel do lado esquerdo.
-
Encontre a função de execução do trabalho para seu trabalho do notebook e escolha o nome da função.
-
Selecione a guia Trust relationships (Relações de confiança).
-
Escolha Editar política de confiança.
-
Copie e cole a política a seguir:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "sagemaker.amazonaws.com", "events.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
Permissões adicionais
Depois de enviado, o trabalho do notebook precisa de permissões para acessar os recursos. As instruções a seguir mostram como adicionar um conjunto mínimo de permissões. Se necessário, adicione mais permissões com base nas necessidades de trabalho do seu notebook. Para adicionar permissões à sua função de execução de trabalho, conclua as etapas a seguir:
-
Abra o IAMconsole
. -
Selecione Funções no painel do lado esquerdo.
-
Encontre a função de execução do trabalho para seu trabalho do notebook e escolha o nome da função.
-
Escolha Adicionar permissões e depois Criar política em linha no menu suspenso.
-
Escolha a JSONguia.
-
Copie e cole a política a seguir:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "PassroleForJobCreation", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/*", "Condition": { "StringLike": { "iam:PassedToService": "sagemaker.amazonaws.com" } } }, { "Sid": "S3ForStoringArtifacts", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": "arn:aws:s3:::sagemaker-automated-execution-*" }, { "Sid": "S3DriverAccess", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetObject", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::sagemakerheadlessexecution-*" ] }, { "Sid": "SagemakerJobs", "Effect": "Allow", "Action": [ "sagemaker:StartPipelineExecution", "sagemaker:CreateTrainingJob" ], "Resource": "*" }, { "Sid": "ECRImage", "Effect": "Allow", "Action": [ "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage", "ecr:GetAuthorizationToken", "ecr:BatchCheckLayerAvailability" ], "Resource": "*" } ] }
-
Adicione permissões a outros recursos que seu trabalho do notebook acessa.
-
Escolha Revisar política.
-
Insira um nome para sua política.
-
Escolha Criar política.