Vue d'ensemble de la gestion des autorisations d'accès à vos AWS CodeBuild ressources - AWS CodeBuild

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.

Vue d'ensemble de la gestion des autorisations d'accès à vos AWS CodeBuild ressources

Chaque AWS ressource appartient à un AWS compte, et les autorisations de création ou d'accès à une ressource sont régies par des politiques d'autorisation. Un compte administrateur peut attacher des politiques d'autorisations à des identités IAM (c'est-à-dire des utilisateurs, des groupes et des rôles).

Note

Un administrateur de compte (ou utilisateur administrateur) est un utilisateur doté des privilèges d’administrateur. Pour plus d'informations, consultez Bonnes pratiques IAM dans le Guide de l'utilisateur IAM.

Lorsque vous accordez des autorisations, vous décidez qui obtient les autorisations, les ressources auxquelles elles peuvent accéder et les actions pouvant être effectuées sur ces ressources.

AWS CodeBuild ressources et opérations

Dans AWS CodeBuild, la ressource principale est un projet de construction. Dans une stratégie, vous utilisez un Amazon Resource Name (ARN) pour identifier la ressource à laquelle la stratégie s'applique. Les générations sont également des ressources et disposent d'ARN associés. Pour plus d'informations, consultez Amazon Resource Names (ARN) et AWS Service Namespaces dans le Référence générale d'Amazon Web Services.

Type de ressource Format ARN
Projet de génération

arn:aws:codebuild:region-ID:account-ID:project/project-name

Génération

arn:aws:codebuild:region-ID:account-ID:build/build-ID

Groupe de rapports arn:aws:codebuild:region-ID:account-ID:report-group/report-group-name
Rapport arn:aws:codebuild:region-ID:account-ID:report/report-ID

Toutes les CodeBuild ressources

arn:aws:codebuild:*

Toutes les CodeBuild ressources détenues par le compte spécifié dans la AWS région spécifiée

arn:aws:codebuild:region-ID:account-ID:*

Note

La plupart AWS des services traitent deux points (:)) ou une barre oblique (/) comme le même caractère dans les ARN. Cependant, CodeBuild utilise une correspondance exacte dans les modèles de ressources et les règles. Veillez à utiliser les caractères corrects lors de la création de modèles d'événements, afin qu'ils correspondent à la syntaxe ARN de la ressource.

Par exemple, vous pouvez indiquer un projet de construction spécifique (myBuildProject) dans votre instruction à l'aide de son ARN comme suit :

"Resource": "arn:aws:codebuild:us-east-2:123456789012:project/myBuildProject"

Pour spécifier toutes les ressources, ou si une action d'API ne prend pas en charge les ARN, utilisez le caractère générique (*) dans l'élément Resource comme suit :

"Resource": "*"

Certaines actions CodeBuild d'API acceptent plusieurs ressources (par exemple,BatchGetProjects). Pour spécifier plusieurs ressources dans une seule déclaration, séparez leurs ARN par des virgules comme suit :

"Resource": [ "arn:aws:codebuild:us-east-2:123456789012:project/myBuildProject", "arn:aws:codebuild:us-east-2:123456789012:project/myOtherBuildProject" ]

CodeBuild fournit un ensemble d'opérations permettant de travailler avec les CodeBuild ressources. Pour en obtenir la liste, veuillez consulter AWS CodeBuild référence aux autorisations.

Présentation de la propriété des ressources

Le AWS compte possède les ressources créées dans le compte, quelle que soit la personne qui les a créées. Plus précisément, le propriétaire de la ressource est le AWS compte de l'entité principale (c'est-à-dire le compte root, un utilisateur ou un rôle IAM) qui authentifie la demande de création de ressource. Les exemples suivants illustrent comment cela fonctionne :

  • Si vous utilisez les informations d'identification du compte root de votre AWS compte pour créer une règle, votre AWS compte est le propriétaire de la CodeBuild ressource.

  • Si vous créez un utilisateur dans votre AWS compte et que vous accordez l'autorisation de créer CodeBuild des ressources à cet utilisateur, celui-ci peut créer CodeBuild des ressources. Cependant, votre AWS compte, auquel appartient l'utilisateur, est propriétaire des CodeBuild ressources.

  • Si vous créez un rôle IAM dans votre AWS compte avec les autorisations nécessaires pour créer CodeBuild des ressources, toute personne pouvant assumer ce rôle peut créer des CodeBuild ressources. Votre AWS compte, auquel appartient le rôle, est propriétaire des CodeBuild ressources.

Gestion de l’accès aux ressources

Une politique d'autorisations décrit qui a accès à quelles ressources.

Note

Cette section décrit l'utilisation d'IAM dans AWS CodeBuild. Elle ne fournit pas d’informations détaillées sur le service IAM. Pour une documentation complète sur IAM, consultez Qu'est-ce que IAM ? dans le Guide de l'utilisateur IAM. Pour plus d'informations sur la syntaxe et les descriptions des stratégies IAM, consultez Référence de stratégie AWS IAM dans le Guide de l'utilisateur IAM.

Les politiques attachées à une identité IAM sont appelées des politiques basées sur l'identité (politiques IAM). Les politiques associées à une ressource sont appelées politiques basées sur les ressources. CodeBuild prend en charge les politiques basées sur l'identité et les politiques basées sur les ressources pour certaines API en lecture seule à des fins de partage de ressources entre comptes.

Accès sécurisé aux compartiments S3

Nous vous recommandons vivement d'inclure les autorisations suivantes dans votre rôle IAM afin de vérifier que le compartiment S3 associé à votre CodeBuild projet est votre propriété ou celle d'une personne de confiance. Ces autorisations ne sont pas incluses dans les politiques et les rôles AWS gérés. Vous devez les ajouter vous-même.

  • s3:GetBucketAcl

  • s3:GetBucketLocation

Si le propriétaire d'un compartiment S3 utilisé par votre projet change, vous devez vérifier que vous êtes toujours propriétaire du compartiment et mettre à jour les autorisations dans votre rôle IAM dans le cas contraire. Pour plus d’informations, consultez Ajouter des autorisations d' CodeBuild accès à un groupe ou à un utilisateur IAM et Création d'un rôle CodeBuild de service.

Spécification des éléments d'une politique : actions, effets et mandataires

Pour chaque AWS CodeBuild ressource, le service définit un ensemble d'opérations d'API. Pour accorder des autorisations pour ces opérations d'API CodeBuild , définissez un ensemble d'actions que vous pouvez spécifier dans une politique. Certaines opérations d'API peuvent exiger des autorisations pour plusieurs actions afin de réaliser l'opération d'API. Pour plus d’informations, consultez AWS CodeBuild ressources et opérations et AWS CodeBuild référence aux autorisations.

Voici les éléments de base d'une politique :

  • Ressource : vous utilisez un nom Amazon Resource Name (ARN) pour identifier la ressource à laquelle s'applique la politique.

  • Action : vous utilisez des mots clés d'action pour identifier les opérations sur les ressources que vous souhaitez autoriser ou refuser. Par exemple, l'autorisation codebuild:CreateProject autorise l'utilisateur à effectuer l'opération CreateProject.

  • Effet : vous spécifiez l'effet, qu'il s'agisse d'autoriser ou de refuser, lorsque l'utilisateur demande l'action. Si vous n’accordez pas explicitement l’accès pour (autoriser) une ressource, l’accès est implicitement refusé. Vous pouvez également explicitement refuser l'accès à une ressource. Vous pouvez le faire afin de vous assurer qu'un utilisateur n'y a pas accès, même si une stratégie différente accorde cet accès.

  • Principal — Dans les politiques basées sur l'identité (politiques IAM), l'utilisateur auquel la politique est attachée est le principal implicite. Pour les politiques basées sur une ressource, vous spécifiez l'utilisateur, le compte, le service ou une autre entité qui doit recevoir les autorisations.

Pour en savoir plus sur la syntaxe des stratégies IAM et pour obtenir des descriptions, consultez Référence de stratégie IAM AWS dans le Guide de l'utilisateur IAM.

Pour un tableau présentant toutes les actions d' CodeBuild API et les ressources auxquelles elles s'appliquent, consultez leAWS CodeBuild référence aux autorisations.