Recurso: Restringir ao POSIX usuário, imagem do Docker, nível de privilégio e função no envio do trabalho - AWS Batch

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

Recurso: Restringir ao POSIX usuário, imagem do Docker, nível de privilégio e função no envio do trabalho

A política a seguir permite que um POSIX usuário gerencie seu próprio conjunto de definições de tarefas restritas.

Use a primeira e a segunda declarações para registrar e cancelar o registro de qualquer nome de definição de tarefa cujo nome esteja prefixado com. JobDefA_

A primeira instrução também usa chaves de contexto condicionais para restringir os valores do POSIX usuário, do status privilegiado e da imagem do contêiner na definição containerProperties de um trabalho. Para obter mais informações, consulte RegisterJobDefinition na AWS Batch API Referência. Neste exemplo, as definições de tarefas só podem ser registradas quando o POSIX usuário está configurado comonobody. O sinalizador privilegiado está definido como false. Por último, a imagem é configurada myImage em um ECR repositório da Amazon.

Importante

O docker resolve o parâmetro user para o uid desse usuário de dentro da imagem do contêiner. Na maioria dos casos, isso é encontrado no arquivo /etc/passwd dentro da imagem do contêiner. Essa resolução de nomes pode ser evitada usando valores diretos de uid tanto na definição de tarefa quanto nas políticas associadas do IAM. Tanto as AWS Batch API operações quanto as chaves batch:User IAM condicionais oferecem suporte a valores numéricos.

Use a terceira afirmação para restringir a apenas uma função específica a uma definição de trabalho.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "batch:RegisterJobDefinition" ], "Resource": [ "arn:aws:batch:<aws_region>:<aws_account_id>:job-definition/JobDefA_*" ], "Condition": { "StringEquals": { "batch:User": [ "nobody" ], "batch:Image": [ "<aws_account_id>.dkr.ecr.<aws_region>.amazonaws.com/myImage" ] }, "Bool": { "batch:Privileged": "false" } } }, { "Effect": "Allow", "Action": [ "batch:DeregisterJobDefinition" ], "Resource": [ "arn:aws:batch:<aws_region>:<aws_account_id>:job-definition/JobDefA_*" ] }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::<aws_account_id>:role/MyBatchJobRole" ] } ] }