Cree un rol SageMaker de ejecución para un trabajo de etiquetado de Ground Truth - Amazon SageMaker

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Cree un rol SageMaker de ejecución para un trabajo de etiquetado de Ground Truth

Al configurar el trabajo de etiquetado, debe proporcionar un rol de ejecución, que es un rol que SageMaker tiene permiso para asumir para iniciar y ejecutar el trabajo de etiquetado.

Este rol debe dar a Ground Truth permiso para acceder a lo siguiente:

  • A Amazon S3 para recuperar los datos de entrada y escribir los datos de salida en un bucket de Amazon S3. Puede conceder permiso a un IAM rol para acceder a todo un depósito proporcionando el depósitoARN, o bien puede conceder acceso al rol para acceder a recursos específicos de un depósito. Por ejemplo, el ARN de un bucket puede tener un aspecto similar arn:aws:s3:::awsexamplebucket1 y el ARN de un recurso de un bucket de Amazon S3 puede tener un aspecto similararn:aws:s3:::awsexamplebucket1/prefix/file-name.png. Para aplicar una acción a todos los recursos de un bucket de Amazon S3, puede utilizar el comodín:*. Por ejemplo, arn:aws:s3:::awsexamplebucket1/prefix/*. Para obtener más información, consulte los Recursos de Amazon S3 en la Guía del usuario de Amazon Simple Storage Service.

  • CloudWatch para registrar las métricas de los trabajadores y etiquetar los estados de los trabajos.

  • AWS KMS para el cifrado de datos. (Opcional)

  • AWS Lambda para procesar los datos de entrada y salida al crear un flujo de trabajo personalizado.

Además, si crea un trabajo de etiquetado en streaming, este rol debe tener permiso para acceder a lo siguiente:

  • Amazon SQS creará una interacción con una SQS cola utilizada para gestionar las solicitudes de etiquetado.

  • Amazon SNS para suscribirse y recuperar mensajes de tu tema de SNS entrada de Amazon y enviar mensajes a tu tema de SNS salida de Amazon.

Todos estos permisos se pueden conceder con la política administrada AmazonSageMakerGroundTruthExecution, excepto:

  • Cifrado del volumen de datos y almacenamiento de sus buckets de Amazon S3. Para obtener información sobre cómo configurar estos permisos, consulte Cifre los datos de salida y el volumen de almacenamiento con AWS KMS.

  • Permiso para seleccionar e invocar funciones de Lambda que no incluyan GtRecipe, SageMaker, Sagemaker, sagemaker o LabelingFunction en el nombre de la función.

  • Buckets de Amazon S3 que no incluyen GroundTruth, Groundtruth, groundtruth, SageMaker, Sagemaker ni sagemaker en el prefijo o nombre del bucket o una etiqueta de objeto que incluya SageMaker en el nombre (no distingue entre mayúsculas y minúsculas).

Si necesita permisos más detallados que los que se proporcionan en AmazonSageMakerGroundTruthExecution, utilice los siguientes ejemplos de políticas para crear un rol de ejecución que se adapte a su caso de uso específico.

Requisitos de roles de ejecución de tipos de tareas integrados (no en streaming)

La siguiente política concede permiso para crear un trabajo de etiquetado para un tipo de tarea integrado. Esta política de ejecución no incluye permisos para el cifrado o descifrado de AWS KMS datos. Sustituya cada uno de los números rojos y en cursiva por ARN su propio Amazon S3. ARNs

{ "Version": "2012-10-17", "Statement": [ { "Sid": "S3ViewBuckets", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::<input-bucket-name>", "arn:aws:s3:::<output-bucket-name>" ] }, { "Sid": "S3GetPutObjects", "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetObject", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::<input-bucket-name>/*", "arn:aws:s3:::<output-bucket-name>/*" ] }, { "Sid": "CloudWatch", "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData", "logs:CreateLogStream", "logs:CreateLogGroup", "logs:DescribeLogStreams", "logs:PutLogEvents" ], "Resource": "*" } ] }

Requisitos de roles de ejecución de tipos de tareas integrados (en streaming)

Si crea un trabajo de etiquetado en streaming, debe añadir una política similar a la siguiente al rol de ejecución que utilice para crear el trabajo de etiquetado. Para limitar el alcance de la política, sustituya la * entrada Resource por AWS recursos específicos a los que desee conceder permiso al IAM rol para acceder y utilizar.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetObject", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::<input-bucket-name>/*", "arn:aws:s3:::<output-bucket-name>/*" ] }, { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": "*", "Condition": { "StringEqualsIgnoreCase": { "s3:ExistingObjectTag/SageMaker": "true" } } }, { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::<input-bucket-name>", "arn:aws:s3:::<output-bucket-name>" ] }, { "Sid": "CloudWatch", "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData", "logs:CreateLogStream", "logs:CreateLogGroup", "logs:DescribeLogStreams", "logs:PutLogEvents" ], "Resource": "*" }, { "Sid": "StreamingQueue", "Effect": "Allow", "Action": [ "sqs:CreateQueue", "sqs:DeleteMessage", "sqs:GetQueueAttributes", "sqs:GetQueueUrl", "sqs:ReceiveMessage", "sqs:SendMessage", "sqs:SendMessageBatch", "sqs:SetQueueAttributes" ], "Resource": "arn:aws:sqs:*:*:*GroundTruth*" }, { "Sid": "StreamingTopicSubscribe", "Effect": "Allow", "Action": "sns:Subscribe", "Resource": [ "arn:aws:sns:<aws-region>:<aws-account-number>:<input-topic-name>", "arn:aws:sns:<aws-region>:<aws-account-number>:<output-topic-name>" ], "Condition": { "StringEquals": { "sns:Protocol": "sqs" }, "StringLike": { "sns:Endpoint": "arn:aws:sns:<aws-region>:<aws-account-number>:*GroundTruth*" } } }, { "Sid": "StreamingTopic", "Effect": "Allow", "Action": [ "sns:Publish" ], "Resource": [ "arn:aws:sns:<aws-region>:<aws-account-number>:<input-topic-name>", "arn:aws:sns:<aws-region>:<aws-account-number>:<output-topic-name>" ] }, { "Sid": "StreamingTopicUnsubscribe", "Effect": "Allow", "Action": [ "sns:Unsubscribe" ], "Resource": [ "arn:aws:sns:<aws-region>:<aws-account-number>:<input-topic-name>", "arn:aws:sns:<aws-region>:<aws-account-number>:<output-topic-name>" ] } ] }

Requisitos de roles de ejecución de tipos de tareas personalizadas

Si desea crear un flujo de trabajo de etiquetado personalizado, añada la siguiente declaración a una política de roles de ejecución como las que se encuentran en Requisitos de roles de ejecución de tipos de tareas integrados (no en streaming) o Requisitos de roles de ejecución de tipos de tareas integrados (en streaming).

Esta política otorga al rol de ejecución permiso para Invoke sus funciones de Lambda previas y posteriores a la anotación.

{ "Sid": "LambdaFunctions", "Effect": "Allow", "Action": [ "lambda:InvokeFunction" ], "Resource": [ "arn:aws:lambda:<region>:<account-id>:function:<pre-annotation-lambda-name>", "arn:aws:lambda:<region>:<account-id>:function:<post-annotation-lambda-name>" ] }

Requisitos de permisos para el etiquetado de datos automático

Si desea crear un trabajo de etiquetado con el etiquetado automático de datos activado, debe 1) añadir una política a la IAM política asociada a la función de ejecución y 2) actualizar la política de confianza de la función de ejecución.

La siguiente afirmación permite transferir la función de IAM ejecución a SageMaker fin de utilizarla para ejecutar los trabajos de formación e inferencia que se utilizan para el aprendizaje activo y el etiquetado de datos automatizado, respectivamente. Añada esta declaración a una política de roles de ejecución como las que se encuentran en Requisitos de roles de ejecución de tipos de tareas integrados (no en streaming) o Requisitos de roles de ejecución de tipos de tareas integrados (en streaming). arn:aws:iam::<account-number>:role/<role-name>Sustitúyala por la función ARN de ejecución. Puedes encontrar tu IAM rol ARN en la IAM consola, en Roles.

{ "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::<account-number>:role/<execution-role-name>", "Condition": { "StringEquals": { "iam:PassedToService": [ "sagemaker.amazonaws.com" ] } } }

La siguiente afirmación permite SageMaker asumir la función de ejecución para crear y gestionar los trabajos de SageMaker formación e inferencia. Esta política debe añadirse a la relación de confianza del rol de ejecución. Para obtener información sobre cómo añadir o modificar una política de confianza de IAM roles, consulte Modificación de un rol en la Guía del IAM usuario.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": {"Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole" } }