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.
CodeBuild Permettre d'interagir avec d'autres AWS services
Si vous suivez les étapes décrites Mise en route à l'aide de la console pour accéder AWS CodeBuild pour la première fois, vous n'avez probablement pas besoin des informations de cette rubrique. Cependant, au fur et à mesure que vous continuez à utiliser CodeBuild, vous souhaiterez peut-être effectuer des actions telles que CodeBuild l'autorisation d'interagir avec d'autres AWS services.
CodeBuild Pour pouvoir interagir avec les AWS services dépendants en votre nom, vous avez besoin d'un rôle AWS CodeBuild de service. Vous pouvez créer un rôle CodeBuild de service à l'aide des AWS CodePipeline consoles CodeBuild ou. Pour plus d'informations, consultez :
Si vous ne prévoyez pas d'utiliser ces consoles, cette section explique comment créer un rôle de CodeBuild service à l'aide de la console IAM ou du AWS CLI.
Important
CodeBuild utilise le rôle de service pour toutes les opérations effectuées en votre nom. Si le rôle comprend des autorisations que l'utilisateur ne devrait pas avoir, vous avez peut-être remonté accidentellement ses autorisations. Vérifiez que le rôle accorde le privilège le plus faible.
Le rôle de service décrit sur cette page contient une stratégie qui accorde les autorisations minimales requises pour utiliser CodeBuild. Vous devrez peut-être ajouter des autorisations supplémentaires, en fonction de votre cas d'utilisation.
Pour créer un rôle CodeBuild de service (console)
Ouvrez la console IAM à l’adresse https://console.aws.amazon.com/iam/
. Vous devez vous être déjà connecté à la console à l'aide de l'une des actions suivantes :
-
Votre compte AWS root. Ceci n'est pas recommandé. Pour plus d'informations, consultez la section L'utilisateur Compte AWS root dans le guide de l'utilisateur.
-
Un utilisateur administrateur de votre AWS compte. Pour plus d'informations, consultez la section Création de votre premier utilisateur Compte AWS root et de votre premier groupe dans le Guide de l'utilisateur.
-
Un utilisateur de votre AWS compte autorisé à effectuer les actions minimales suivantes :
iam:AddRoleToInstanceProfile iam:AttachRolePolicy iam:CreateInstanceProfile iam:CreatePolicy iam:CreateRole iam:GetRole iam:ListAttachedRolePolicies iam:ListPolicies iam:ListRoles iam:PassRole iam:PutRolePolicy iam:UpdateAssumeRolePolicyPour plus d'informations, consultez la section Présentation des politiques IAM dans le guide de l'utilisateur.
-
-
Dans le panneau de navigation, choisissez Politiques.
-
Choisissez Create Policy (Créer une politique).
-
Sur la page Créer une stratégie, choisissez JSON.
-
Pour la stratégie JSON, saisissez ce qui suit, puis choisissez Review Policy (Examiner une stratégie) :
Note
Cette politique contient des déclarations qui autorisent l'accès à un nombre potentiellement élevé de AWS ressources. Pour restreindre AWS CodeBuild l'accès à AWS des ressources spécifiques, modifiez la valeur du
Resourcetableau. Pour plus d'informations, consultez la documentation de sécurité du AWS service. -
Sur la page Review Policy (Examiner une stratégie), pour Policy Name (Nom de stratégie), saisissez un nom pour la stratégie (par exemple,
CodeBuildServiceRolePolicy), puis choisissez Create policy (Créer une stratégie).Note
Si vous choisissez un autre nom, veillez à l'utiliser tout au long de cette procédure.
-
Dans le panneau de navigation, choisissez Rôles.
-
Sélectionnez Create role (Créer un rôle).
-
Sur la page Créer un rôle, avec AWS Service déjà sélectionné CodeBuild, choisissez, puis choisissez Next:Permissions.
-
Sur la page Joindre des politiques d'autorisations CodeBuildServiceRolePolicy, sélectionnez, puis choisissez Suivant : Réviser.
-
Sur la page Create role and review (Créer un rôle et vérifier), pour Role name (Nom du rôle), saisissez le nom du rôle (par exemple,
CodeBuildServiceRole), puis choisissez Create role (Créer un rôle).
Pour créer un rôle CodeBuild de service (AWS CLI)
-
Assurez-vous d'avoir configuré le AWS CLI avec la clé AWS d'accès et la clé d'accès AWS secrète qui correspondent à l'une des entités IAM, comme décrit dans la procédure précédente. Pour plus d'informations, consultez Préparation de l'installation de l' AWS Command Line Interface dans le Guide de l'utilisateur AWS Command Line Interface .
-
Dans un répertoire vide du poste de travail local ou de l'instance où AWS CLI est installé le, créez deux fichiers nommés
create-role.jsonetput-role-policy.json. Si vous choisissez des noms de fichier différents, substituez-les tout au long de cette procédure.create-role.json:Note
Nous vous recommandons d’utiliser les clés de condition
aws:SourceAccountetaws:SourceArnpour vous protéger contre le problème du député confus. Par exemple, vous pouvez modifier la politique de confiance précédente à l'aide des blocs de conditions suivants.aws:SourceAccountC'est le propriétaire du CodeBuild projet etaws:SourceArnc'est l'ARN CodeBuild du projet.Si vous souhaitez limiter votre rôle de service à un AWS compte, cela
create-role.jsonpourrait ressembler à ceci :Si vous souhaitez limiter votre rôle de service à un CodeBuild projet spécifique, cela
create-role.jsonpourrait ressembler à ceci :Note
Si vous ne connaissez pas le nom de votre CodeBuild projet ou si vous n'avez pas encore choisi de nom et que vous souhaitez appliquer une restriction de politique de confiance à un modèle d'ARN particulier, vous pouvez remplacer cette partie de l'ARN par un caractère générique (*). Après avoir créé votre projet, vous pouvez mettre à jour la politique de confiance.
put-role-policy.json:Note
Cette politique contient des déclarations qui autorisent l'accès à un nombre potentiellement élevé de AWS ressources. Pour restreindre AWS CodeBuild l'accès à AWS des ressources spécifiques, modifiez la valeur du
Resourcetableau. Pour plus d'informations, consultez la documentation de sécurité du AWS service. -
Placez-vous dans le répertoire dans lequel vous avez enregistré les fichiers précédents, puis exécutez les deux commandes suivantes, une par une, dans cet ordre. Vous pouvez utiliser des valeurs différentes pour
CodeBuildServiceRoleetCodeBuildServiceRolePolicy, mais veillez à les substituer ici.aws iam create-role --role-name CodeBuildServiceRole --assume-role-policy-document file://create-role.jsonaws iam put-role-policy --role-name CodeBuildServiceRole --policy-name CodeBuildServiceRolePolicy --policy-document file://put-role-policy.json