

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á.

# Crie uma função de execução de SageMaker IA para um trabalho de rotulagem da Ground Truth
<a name="sms-security-permission-execution-role"></a>

Ao configurar seu trabalho de rotulagem, você precisa fornecer uma *função de execução*, que é uma função que a SageMaker IA tem permissão para assumir para iniciar e executar seu trabalho de rotulagem.

Essa função deve conceder permissão ao Ground Truth para acessar o seguinte: 
+ O Amazon S3 para recuperar os dados de entrada e gravar os dados de saída em um bucket do Amazon S3. Você pode conceder permissão para um perfil do IAM acessar um bucket inteiro fornecendo o ARN do bucket ou conceder acesso aos recursos específicos em um bucket. Por exemplo, o ARN de um bucket pode ser semelhante a `arn:aws:s3:::amzn-s3-demo-bucket1` e o ARN de um recurso em um bucket do Amazon S3 pode ser semelhante ao `arn:aws:s3:::amzn-s3-demo-bucket1/prefix/file-name.png`. Para aplicar uma ação a todos os recursos em um bucket do Amazon S3, use o curinga: `*`. Por exemplo, .`arn:aws:s3:::amzn-s3-demo-bucket1/prefix/*` Para obter mais informações, consulte [Recursos do Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html) no Guia do usuário do Amazon Simple Storage Service.
+ CloudWatch para registrar as métricas dos trabalhadores e rotular os status do trabalho.
+ AWS KMS para criptografia de dados. (Optional)
+ AWS Lambda para processar dados de entrada e saída ao criar um fluxo de trabalho personalizado. 

Além disso, se você criar um [trabalho de rotulagem de streaming](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-streaming-labeling-job.html), essa função deverá ter permissão para acessar:
+ [Amazon SQS para criar uma interação com uma fila do SQS usada para gerenciar solicitações de rotulagem.](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-streaming-labeling-job.html#sms-streaming-how-it-works-sqs)
+ Amazon SNS para assinar e recuperar mensagens do tópico de entrada do Amazon SNS e para enviar mensagens para o tópico de saída do Amazon SNS.

Todas essas permissões podem ser concedidas com a política gerenciada `[AmazonSageMakerGroundTruthExecution](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerGroundTruthExecution)`, *exceto*:
+ Criptografia do volume de dados e armazenamento dos buckets do Amazon S3. Para saber como configurar essas permissões, consulte [Criptografe os dados de saída e o volume de armazenamento com AWS KMS](sms-security-kms-permissions.md).
+ Permissão para selecionar e invocar funções do Lambda que não incluam `GtRecipe`, `SageMaker`, `Sagemaker`, `sagemaker` ou `LabelingFunction` no nome da função.
+ Buckets do Amazon S3 que não incluem `GroundTruth`, `Groundtruth`, `groundtruth`, `SageMaker`, `Sagemaker` e `sagemaker` no prefixo ou no nome do bucket ou uma [tag de objeto](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html) que inclua o `SageMaker` no nome (não diferenciar maiúsculas de minúsculas).

Se você precisar de permissões mais granulares do que as fornecidas em `AmazonSageMakerGroundTruthExecution`, use os exemplos de políticas a seguir para criar um perfil de execução adequada ao seu caso de uso específico.

**Topics**
+ [Built-In Tipos de tarefas (Non-streaming) Requisitos da função de execução](#sms-security-permission-execution-role-built-in-tt)
+ [Built-In Requisitos da função de execução de tipos de tarefas (streaming)](#sms-security-permission-execution-role-built-in-tt-streaming)
+ [Requisitos da função de execução para tipos de tarefas personalizados](#sms-security-permission-execution-role-custom-tt)
+ [Requisitos de permissão para rotulagem de dados automatizada](#sms-security-permission-execution-role-custom-auto-labeling)

## Built-In Tipos de tarefas (Non-streaming) Requisitos da função de execução
<a name="sms-security-permission-execution-role-built-in-tt"></a>

A política a seguir concede permissão para criar um trabalho de rotulagem para um [tipo de tarefa integrado](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-task-types.html). Essa política de execução não inclui permissões para criptografia ou decodificação de AWS KMS dados. Substitua cada ARN vermelho em itálico por seus próprios ARNs do Amazon S3.

------
#### [ JSON ]

****  

```
{
    "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": "*"
        }
    ]
}
```

------

## Built-In Requisitos da função de execução de tipos de tarefas (streaming)
<a name="sms-security-permission-execution-role-built-in-tt-streaming"></a>

Se você criar um trabalho de rotulagem de streaming, deverá adicionar uma política semelhante à seguinte à função de execução usada para criar o trabalho de rotulagem: Para restringir o escopo da política, substitua o `*` in `Resource` por AWS recursos específicos que você deseja conceder permissão ao papel do IAM para acessar e usar.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:AbortMultipartUpload",
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::{{amzn-s3-demo-bucket}}/*",
                "arn:aws:s3:::{{amzn-s3-demo-bucket2}}/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": "*",
            "Condition": {
                "StringEqualsIgnoreCase": {
                    "s3:ExistingObjectTag/SageMaker": "true"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetBucketLocation",
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::{{amzn-s3-demo-bucket}}",
                "arn:aws:s3:::{{amzn-s3-demo-bucket2}}"
            ]
        },
        {
            "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:SetQueueAttributes"
            ],
            "Resource": "arn:aws:sqs:*:*:*GroundTruth*"
        },
        {
            "Sid": "StreamingTopicSubscribe",
            "Effect": "Allow",
            "Action": "sns:Subscribe",
            "Resource": [
                "arn:aws:sns:{{us-east-1}}:{{111122223333}}:{{input-topic-name}}",
                "arn:aws:sns:{{us-east-1}}:{{111122223333}}:{{output-topic-name}}"
            ],
            "Condition": {
                "StringEquals": {
                    "sns:Protocol": "sqs"
                },
                "StringLike": {
                    "sns:Endpoint": "arn:aws:sns:{{us-east-1}}:{{111122223333}}:*GroundTruth*"
                }
            }
        },
        {
            "Sid": "StreamingTopic",
            "Effect": "Allow",
            "Action": [
                "sns:Publish"
            ],
            "Resource": [
                "arn:aws:sns:{{us-east-1}}:{{111122223333}}:{{input-topic-name}}",
                "arn:aws:sns:{{us-east-1}}:{{111122223333}}:{{output-topic-name}}"
            ]
        },
        {
            "Sid": "StreamingTopicUnsubscribe",
            "Effect": "Allow",
            "Action": [
                "sns:Unsubscribe"
            ],
            "Resource": [
                "arn:aws:sns:{{us-east-1}}:{{111122223333}}:{{input-topic-name}}",
                "arn:aws:sns:{{us-east-1}}:{{111122223333}}:{{output-topic-name}}"
            ]
        }
    ]
}
```

------

## Requisitos da função de execução para tipos de tarefas personalizados
<a name="sms-security-permission-execution-role-custom-tt"></a>

Se você quiser criar um [fluxo de trabalho de rotulagem personalizado](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-custom-templates.html), adicione a seguinte instrução a uma política de função de execução, como as encontradas em [Built-In Tipos de tarefas (Non-streaming) Requisitos da função de execução](#sms-security-permission-execution-role-built-in-tt) ou [Built-In Requisitos da função de execução de tipos de tarefas (streaming)](#sms-security-permission-execution-role-built-in-tt-streaming):

Essa política dá permissão ao perfil de execução para `Invoke` as funções do Lambda de pré-anotação e pós-anotação.

```
{
    "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 permissão para rotulagem de dados automatizada
<a name="sms-security-permission-execution-role-custom-auto-labeling"></a>

Se você quiser criar um trabalho de rotulagem com a [rotulagem automática de dados](https://docs.aws.amazon.com/sagemaker/latest/dg/sms-automated-labeling.html) ativada, você deve 1) adicionar uma política à política do IAM anexada ao perfil de execução e 2) atualizar a política de confiança do perfil de execução. 

A declaração a seguir permite que a função de execução do IAM seja passada para a SageMaker IA para que ela possa ser usada para executar os trabalhos de treinamento e inferência usados para aprendizado ativo e rotulagem automática de dados, respectivamente. Adicione essa instrução a uma política de função de execução como as encontradas em [Built-In Tipos de tarefas (Non-streaming) Requisitos da função de execução](#sms-security-permission-execution-role-built-in-tt) ou [Built-In Requisitos da função de execução de tipos de tarefas (streaming)](#sms-security-permission-execution-role-built-in-tt-streaming). `{{arn:aws:iam::<account-number>:role/<role-name>}}`Substitua pelo ARN da função de execução. Você pode encontrar o ARN do perfil do IAM no console do IAM em **Funções**. 

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

A declaração a seguir permite que a SageMaker IA assuma a função de execução para criar e gerenciar os trabalhos de SageMaker treinamento e inferência. Essa política deve ser adicionada à relação de confiança da função de execução. Para saber como adicionar ou modificar uma política de confiança de perfil do IAM, consulte [Modificar uma função](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_modify.html) no Guia do usuário do IAM.

------
#### [ JSON ]

****  

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

------

