Ressource : Restreindre à POSIX l'utilisateur, à l'image Docker, au niveau de privilège et au rôle lors de la soumission du travail - AWS Batch

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Ressource : Restreindre à POSIX l'utilisateur, à l'image Docker, au niveau de privilège et au rôle lors de la soumission du travail

La politique suivante permet à un POSIX utilisateur de gérer son propre ensemble de définitions de tâches restreintes.

Utilisez les première et deuxième instructions pour enregistrer et désenregistrer tout nom de définition de tâche dont le nom est préfixé par JobDefA_.

La première instruction utilise également des clés contextuelles conditionnelles pour restreindre les valeurs de POSIX l'utilisateur, du statut privilégié et de l'image du conteneur dans la définition containerProperties d'une tâche. Pour plus d'informations, reportez-vous RegisterJobDefinitionà la section AWS Batch APIRéférence. Dans cet exemple, les définitions de tâches ne peuvent être enregistrées que lorsque l'POSIXutilisateur est configuré surnobody. Le drapeau privilégié est défini surfalse. Enfin, l'image est configurée pour figurer myImage dans un ECR référentiel Amazon.

Important

Docker résout le user paramètre pour cet utilisateur uid depuis l'image du conteneur. Dans la plupart des cas, cela se trouve dans le /etc/passwd fichier contenu dans l'image du conteneur. Cette résolution de noms peut être évitée en utilisant des uid valeurs directes à la fois dans la définition de la tâche et dans IAM les politiques associées. Les AWS Batch API opérations et les clés batch:User IAM conditionnelles prennent en charge les valeurs numériques.

Utilisez la troisième déclaration pour limiter la définition d'une tâche à un rôle spécifique.

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