Comment AWS CodeStar fonctionne avec IAM - AWS CodeStar

Le 31 juillet 2024, Amazon Web Services (AWS) cessera de prendre en charge la création et la visualisation de AWS CodeStar projets. Après le 31 juillet 2024, vous ne pourrez plus accéder à la AWS CodeStar console ni créer de nouveaux projets. Toutefois, les AWS ressources créées par AWS CodeStar, y compris vos référentiels sources, vos pipelines et vos versions, ne seront pas affectées par cette modification et continueront de fonctionner. AWS CodeStar Les connexions et AWS CodeStar les notifications ne seront pas affectées par cette interruption.

 

Si vous souhaitez suivre le travail, développer du code et créer, tester et déployer vos applications, Amazon CodeCatalyst propose un processus de démarrage rationalisé et des fonctionnalités supplémentaires pour gérer vos projets logiciels. En savoir plus sur les fonctionnalités et les tarifs d'Amazon CodeCatalyst.

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.

Comment AWS CodeStar fonctionne avec IAM

Avant d'utiliser IAM pour gérer l'accès à AWS CodeStar, vous devez comprendre quelles fonctionnalités IAM peuvent être utilisées avec AWS. CodeStar Pour obtenir une vue d'ensemble de la manière dont AWS CodeStar et les autres AWS services fonctionnent avec IAM, consultez la section AWS Services That Work with IAM dans le guide de l'utilisateur d'IAM.

Politiques basées sur CodeStar l'identité AWS

Avec les politiques basées sur l'identité IAM, vous pouvez spécifier les actions et les ressources autorisées ou refusées, ainsi que les conditions dans lesquelles les actions sont autorisées ou refusées. AWS CodeStar crée plusieurs politiques basées sur l'identité en votre nom, qui permettent de AWS CodeStar créer et de gérer des ressources dans le cadre d'un AWS CodeStar projet. AWS CodeStar prend en charge des actions, des ressources et des clés de condition spécifiques. Pour en savoir plus sur tous les éléments que vous utilisez dans une politique JSON, consultez Références des éléments de politique JSON IAM dans le Guide de l’utilisateur IAM.

Actions

Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C’est-à-dire, quel principal peut effectuer des actions sur quelles ressources et dans quelles conditions.

L’élément Action d’une politique JSON décrit les actions que vous pouvez utiliser pour autoriser ou refuser l’accès à une politique. Les actions de stratégie portent généralement le même nom que l'opération AWS d'API associée. Il existe quelques exceptions, telles que les actions avec autorisations uniquement qui n’ont pas d’opération API correspondante. Certaines opérations nécessitent également plusieurs actions dans une politique. Ces actions supplémentaires sont nommées actions dépendantes.

Intégration d’actions dans une stratégie afin d’accorder l’autorisation d’exécuter les opérations associées.

Les actions de politique dans AWS CodeStar utilisent le préfixe suivant avant l'action : codestar: Par exemple, pour autoriser un utilisateur IAM spécifique à modifier les attributs d'un AWS CodeStar projet, tels que sa description, vous pouvez utiliser la déclaration de politique suivante :

{ "Version": "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : [ "codestar:UpdateProject" ], "Resource" : "arn:aws:codestar:us-east-2:project/my-first-projec" } ] }

Les déclarations de politique doivent inclure un élément Action ou NotAction. AWS CodeStar définit son propre ensemble d'actions décrivant les tâches que vous pouvez effectuer avec ce service.

Pour spécifier plusieurs actions dans une seule déclaration, séparez-les par des virgules comme suit :

"Action": [ "codestar:action1", "codestar:action2"

Vous pouvez aussi spécifier plusieurs actions à l’aide de caractères génériques (*). Par exemple, pour spécifier toutes les actions qui commencent par le mot List, incluez l’action suivante :

"Action": "codestar:List*"

Pour consulter la liste des CodeStar actions AWS, consultez la section Actions définies par AWS CodeStar dans le guide de l'utilisateur IAM.

Ressources

Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C’est-à-dire, quel principal peut effectuer des actions sur quelles ressources et dans quelles conditions.

L’élément de politique JSON Resource indique le ou les objets auxquels l’action s’applique. Les instructions doivent inclure un élément Resource ou NotResource. Il est recommandé de définir une ressource à l’aide de son Amazon Resource Name (ARN). Vous pouvez le faire pour des actions qui prennent en charge un type de ressource spécifique, connu sous la dénomination autorisations de niveau ressource.

Pour les actions qui ne sont pas compatibles avec les autorisations de niveau ressource, telles que les opérations de liste, utilisez un caractère générique (*) afin d’indiquer que l’instruction s’applique à toutes les ressources.

"Resource": "*"

La ressource AWS CodeStar du projet possède l'ARN suivant :

arn:aws:codestar:region:account:project/resource-specifier

Pour plus d'informations sur le format des ARN, consultez Amazon Resource Names (ARN) et AWS Service Namespaces.

Par exemple, ce qui suit indique le nom AWS CodeStar du projet my-first-projec enregistré sur le AWS compte 111111111111 dans la AWS région us-east-2 :

arn:aws:codestar:us-east-2:111111111111:project/my-first-projec

Ce qui suit indique tout AWS CodeStar projet qui commence par le nom my-proj enregistré sur le AWS compte 111111111111 dans la AWS région us-east-2 :

arn:aws:codestar:us-east-2:111111111111:project/my-proj*

Certaines CodeStar actions AWS, telles que la mise en liste de projets, ne peuvent pas être effectuées sur une ressource. Dans ces cas-là, vous devez utiliser le caractère générique (*).

"LisProjects": "*"

Pour consulter la liste des types de CodeStar ressources AWS et de leurs ARN, consultez la section Ressources définies par AWS CodeStar dans le guide de l'utilisateur IAM. Pour savoir avec quelles actions vous pouvez spécifier l'ARN de chaque ressource, consultez Actions définies par AWS CodeStar.

Clés de condition

AWS CodeStar ne fournit aucune clé de condition spécifique au service, mais prend en charge l'utilisation de certaines clés de condition globales. Pour voir toutes les clés de condition AWS globales, consultez la section Clés contextuelles de condition AWS globale dans le guide de l'utilisateur IAM.

Exemples

Pour consulter des exemples de politiques CodeStar basées sur l'identité AWS, consultez. Exemples de politiques CodeStar basées sur l'identité AWS

Politiques basées sur CodeStar les ressources AWS

AWS CodeStar ne prend pas en charge les politiques basées sur les ressources.

Autorisation basée sur les CodeStar balises AWS

Vous pouvez associer des balises à CodeStar des projets AWS ou transmettre des balises dans une demande adressée à AWS CodeStar. Pour contrôler l’accès basé sur des étiquettes, vous devez fournir les informations d’étiquette dans l’élément de condition d’une politique utilisant les clés de condition codestar:ResourceTag/key-name, aws:RequestTag/key-name ou aws:TagKeys. Pour plus d'informations sur le balisage des CodeStar ressources AWS, consultezUtilisation des balises de projet dans AWS CodeStar.

Pour consulter un exemple de politique basée sur l'identité permettant de limiter l'accès à un AWS CodeStar projet en fonction des balises associées à ce projet, voir. Affichage de CodeStar projets AWS en fonction de balises

Rôles AWS CodeStar IAM

Un rôle IAM est une entité de votre AWS compte dotée d'autorisations spécifiques.

Vous pouvez l'utiliser AWS CodeStar en tant qu'utilisateur IAM, utilisateur fédéré, utilisateur root ou en tant que rôle assumé. Tous les types d'utilisateurs disposant des autorisations appropriées peuvent gérer les autorisations de projet relatives à leurs AWS ressources, mais AWS CodeStar les autorisations de projet sont gérées automatiquement pour les utilisateurs IAM. Les politiques et les rôles IAM accordent des autorisations et un accès à cet utilisateur en fonction du rôle du projet. Vous pouvez utiliser la console IAM pour créer d'autres politiques qui attribuent AWS CodeStar d'autres autorisations à un utilisateur IAM.

Par exemple, vous voudrez peut-être autoriser un utilisateur à afficher un projet AWS CodeStar , mais pas à le modifier. Dans ce cas, vous ajoutez l'utilisateur IAM à un AWS CodeStar projet avec le rôle d'observateur. Chaque AWS CodeStar projet possède un ensemble de règles qui vous aident à contrôler l'accès au projet. En outre, vous pouvez contrôler les utilisateurs auxquels ils ont accès AWS CodeStar.

AWS CodeStar l'accès est géré différemment pour les utilisateurs IAM et les utilisateurs fédérés. Seuls les utilisateurs IAM peuvent être ajoutés à des équipes. Pour accorder à des utilisateurs IAM des autorisations sur les projets, vous devez les ajouter à l'équipe de projet et leur attribuer un rôle. Pour accorder aux utilisateurs fédérés des autorisations sur les projets, vous devez associer manuellement la politique gérée du rôle du AWS CodeStar projet au rôle de l'utilisateur fédéré.

Ce tableau récapitule les outils disponibles pour chaque type d'accès.

Fonction des autorisations Utilisateur IAM Utilisateur fédéré Utilisateur root
Gestion des clés SSH pour l'accès à distance aux projets Amazon EC2 et Elastic Beanstalk
AWS CodeCommit Accès SSH
Autorisations utilisateur IAM gérées par AWS CodeStar
Autorisations de projet gérées manuellement
Les utilisateurs peuvent être ajoutés à un projet en tant que membres d'équipe

Accès utilisateur IAM à AWS CodeStar

Lorsque vous ajoutez un utilisateur IAM à un projet et que vous choisissez un rôle pour cet utilisateur, AWS CodeStar applique automatiquement la politique appropriée à l'utilisateur IAM. Pour les utilisateurs IAM, il n'est pas nécessaire de joindre ou de gérer directement des politiques ou des autorisations dans IAM. Pour plus d'informations sur l'ajout d'un utilisateur IAM à un AWS CodeStar projet, consultezAjouter des membres de l'équipe à un projet AWS CodeStar. Pour plus d'informations sur la suppression d'un utilisateur IAM d'un AWS CodeStar projet, consultezSupprimer des membres d'une équipe dans un projet AWS CodeStar.

Associer une politique intégrée à un utilisateur IAM

Lorsque vous ajoutez un utilisateur à un projet, la politique gérée correspondant au rôle de l'utilisateur est AWS CodeStar automatiquement attachée au projet. Vous ne devez pas associer manuellement une politique AWS CodeStar gérée pour un projet à un utilisateur IAM. À l'exception deAWSCodeStarFullAccess, nous vous déconseillons de joindre des politiques qui modifient les autorisations d'un utilisateur IAM dans un AWS CodeStar projet. Si vous décidez de créer et d'associer vos propres politiques, consultez la section Ajouter et supprimer des autorisations d'identité IAM dans le guide de l'utilisateur IAM.

Accès utilisateur fédéré à AWS CodeStar

Au lieu de créer un utilisateur IAM ou d'utiliser l'utilisateur root, vous pouvez utiliser des identités utilisateur provenant de votre annuaire d'entreprise AWS Directory Service, d'un fournisseur d'identité Web ou d'utilisateurs IAM assumant des rôles. Ces derniers sont appelés utilisateurs fédérés.

Accordez aux utilisateurs fédérés l'accès à votre AWS CodeStar projet en associant manuellement les politiques gérées décrites dans Politiques et autorisations AWS CodeStar au niveau du projet au rôle IAM de l'utilisateur. Vous attachez la politique du propriétaire, du contributeur ou du lecteur après avoir AWS CodeStar créé les ressources de votre projet et les rôles IAM.

Prérequis :

  • Vous devez avoir configuré un fournisseur d'identité. Par exemple, vous pouvez configurer un fournisseur d'identité SAML et configurer l' AWS authentification par le biais de ce fournisseur. Pour de plus amples informations sur la configuration d'un fournisseur d'identité, veuillez consulter Création de fournisseurs d'identité IAM. Pour plus d'informations sur la fédération SAML, consultez À propos de la fédération SAML 2.0.

  • Vous devez avoir créé un rôle que doit assumer un utilisateur fédéré lorsqu'un accès est demandé par l'intermédiaire d'un fournisseur d'identité. Une stratégie d'approbation STS doit être attachée au rôle qui permet aux utilisateurs fédérés d'assumer le rôle. Pour plus d'informations, consultez Utilisateurs fédérés et rôles dans le Guide de l'utilisateur IAM.

  • Vous devez avoir créé votre AWS CodeStar projet et en connaître l'identifiant.

Pour plus d'informations sur la création d'un rôle pour les fournisseurs d'identité, consultez Création d'un rôle pour un fournisseur d'identité tiers (Fédération).

Associer la politique AWSCodeStarFullAccess gérée au rôle de l'utilisateur fédéré

Accordez à un utilisateur fédéré les autorisations nécessaires pour créer un projet en attachant la stratégie gérée AWSCodeStarFullAccess. Pour effectuer ces étapes, vous devez vous être connecté à la console soit en tant qu'utilisateur root, soit en tant qu'utilisateur administrateur du compte, soit en tant qu'utilisateur IAM ou utilisateur fédéré avec la politique AdministratorAccess gérée associée ou équivalent.

Note

Une fois que vous avez créé le projet, vos autorisations de propriétaire du projet ne sont pas appliquées automatiquement. En utilisant un rôle disposant d'autorisations administratives pour votre compte, attachez la stratégie gérée de propriétaire, comme décrit dans Associez la politique gérée par le AWS CodeStar visualiseur/contributeur/propriétaire de votre projet au rôle de l'utilisateur fédéré.

  1. Ouvrez la console IAM. Dans le panneau de navigation, choisissez Politiques.

  2. Entrez AWSCodeStarFullAccess dans le champ de recherche. Le nom de la stratégie s'affiche, avec le type de politique AWS gérée. Vous pouvez développer la stratégie pour voir les autorisations qui figurent dans sa déclaration.

  3. Sélectionnez le cercle en regard de la stratégie puis, sous Actions de stratégie, choisissez Attacher.

  4. Sur la page Récapitulatif, choisissez l'onglet Entités attachées. Choisissez Attacher.

  5. Sur la page Attacher la stratégie, filtrez sur le rôle de l'utilisateur fédéré dans le champ de recherche. Cochez la case en regard du nom du rôle, puis choisissez Attacher la stratégie. L'onglet Entités attachées affiche le nouvel attachement.

Associez la politique gérée par le AWS CodeStar visualiseur/contributeur/propriétaire de votre projet au rôle de l'utilisateur fédéré

Accordez aux utilisateurs fédérés l'accès à votre projet en attachant la stratégie de propriétaire, de participant ou de lecteur au rôle de l'utilisateur. La stratégie gérée accorde le niveau d'autorisations approprié. Dans le cas des utilisateurs fédérés, contrairement aux utilisateurs IAM, vous devez attacher et détacher manuellement les stratégies gérées. Cela revient à attribuer des autorisations de projet aux membres de l'équipe dans AWS CodeStar. Pour effectuer ces étapes, vous devez vous être connecté à la console soit en tant qu'utilisateur root, soit en tant qu'utilisateur administrateur du compte, soit en tant qu'utilisateur IAM ou utilisateur fédéré avec la politique AdministratorAccess gérée associée ou équivalent.

Prérequis :

  • Vous devez avoir créé un rôle ou disposer d'un rôle existant qu'assume votre utilisateur fédéré.

  • Vous devez savoir quel niveau d'autorisations accorder. Les stratégies gérées attachées aux rôles de propriétaire, de participant et de lecteur confèrent des autorisations basées sur le rôle pour votre projet.

  • Votre AWS CodeStar projet doit avoir été créé. La politique gérée n'est pas disponible dans IAM tant que le projet n'est pas créé.

  1. Ouvrez la console IAM. Dans le panneau de navigation, choisissez Politiques.

  2. Entrez l'ID de votre projet dans le champ de recherche. Le nom de la stratégie correspondant à votre projet s'affiche avec le type de stratégie Stratégies gérées par le client. Vous pouvez développer la stratégie pour voir les autorisations qui figurent dans sa déclaration.

  3. Choisissez l'une de ces stratégies gérées. Sélectionnez le cercle en regard de la stratégie puis, sous Actions de stratégie, choisissez Attacher.

  4. Sur la page Récapitulatif, choisissez l'onglet Entités attachées. Choisissez Attacher.

  5. Sur la page Attacher la stratégie, filtrez sur le rôle de l'utilisateur fédéré dans le champ de recherche. Cochez la case en regard du nom du rôle, puis choisissez Attacher la stratégie. L'onglet Entités attachées affiche le nouvel attachement.

Détacher une politique AWS CodeStar gérée du rôle de l'utilisateur fédéré

Avant de supprimer votre AWS CodeStar projet, vous devez détacher manuellement toutes les politiques gérées que vous avez associées au rôle d'un utilisateur fédéré. Pour effectuer ces étapes, vous devez vous être connecté à la console soit en tant qu'utilisateur root, soit en tant qu'utilisateur administrateur du compte, soit en tant qu'utilisateur IAM ou utilisateur fédéré avec la politique AdministratorAccess gérée associée ou équivalent.

  1. Ouvrez la console IAM. Dans le panneau de navigation, choisissez Politiques.

  2. Entrez l'ID de votre projet dans le champ de recherche.

  3. Sélectionnez le cercle en regard de la stratégie puis, sous Actions de stratégie, choisissez Attacher.

  4. Sur la page Récapitulatif, choisissez l'onglet Entités attachées.

  5. Dans le champ de recherche, filtrez sur le rôle de l'utilisateur fédéré. Choisissez Détacher.

Associer une politique AWS Cloud9 gérée au rôle de l'utilisateur fédéré

Si vous utilisez un environnement de AWS Cloud9 développement, accordez aux utilisateurs fédérés l'accès à celui-ci en associant la politique AWSCloud9User gérée au rôle de l'utilisateur. Dans le cas des utilisateurs fédérés, contrairement aux utilisateurs IAM, vous devez attacher et détacher manuellement les stratégies gérées. Pour effectuer ces étapes, vous devez vous être connecté à la console soit en tant qu'utilisateur root, soit en tant qu'utilisateur administrateur du compte, soit en tant qu'utilisateur IAM ou utilisateur fédéré avec la politique AdministratorAccess gérée associée ou équivalent.

Prérequis :

  • Vous devez avoir créé un rôle ou disposer d'un rôle existant qu'assume votre utilisateur fédéré.

  • Vous devez savoir quel niveau d'autorisations accorder :

    • La stratégie gérée AWSCloud9User permet à l'utilisateur d'effectuer les opérations suivantes :

      • Créez leurs propres environnements AWS Cloud9 de développement.

      • Obtenir des informations sur son environnement

      • Modifier les paramètres de son environnement

    • La stratégie gérée AWSCloud9Administrator permet à l'utilisateur d'effectuer les opérations suivantes pour lui-même ou pour d'autres utilisateurs :

      • Créer des environnements

      • Obtenir des informations sur les environnements

      • Supprimer des environnements

      • Modifier les paramètres d'environnements

  1. Ouvrez la console IAM. Dans le panneau de navigation, choisissez Politiques.

  2. Entrez le nom de la stratégie dans le champ de recherche. La stratégie gérée s'affiche, avec le type de stratégie AWS gérée. Vous pouvez développer la stratégie pour voir les autorisations qui figurent dans sa déclaration.

  3. Choisissez l'une de ces stratégies gérées. Sélectionnez le cercle en regard de la stratégie puis, sous Actions de stratégie, choisissez Attacher.

  4. Sur la page Récapitulatif, choisissez l'onglet Entités attachées. Choisissez Attacher.

  5. Sur la page Attacher la stratégie, filtrez sur le rôle de l'utilisateur fédéré dans le champ de recherche. Cochez la case en regard du nom du rôle, puis choisissez Attacher la stratégie. L'onglet Entités attachées affiche le nouvel attachement.

Détacher une politique AWS Cloud9 gérée du rôle de l'utilisateur fédéré

Si vous utilisez un environnement de AWS Cloud9 développement, vous pouvez supprimer l'accès d'un utilisateur fédéré à celui-ci en détachant la politique qui accorde l'accès. Pour effectuer ces étapes, vous devez vous être connecté à la console soit en tant qu'utilisateur root, soit en tant qu'utilisateur administrateur du compte, soit en tant qu'utilisateur IAM ou utilisateur fédéré avec la politique AdministratorAccess gérée associée ou équivalent.

  1. Ouvrez la console IAM. Dans le panneau de navigation, choisissez Politiques.

  2. Entrez le nom de votre projet dans le champ de recherche.

  3. Sélectionnez le cercle en regard de la stratégie puis, sous Actions de stratégie, choisissez Attacher.

  4. Sur la page Récapitulatif, choisissez l'onglet Entités attachées.

  5. Dans le champ de recherche, filtrez sur le rôle de l'utilisateur fédéré. Choisissez Détacher.

Utilisation d'informations d'identification temporaires avec AWS CodeStar

Vous pouvez utiliser des informations d’identification temporaires pour vous connecter à l’aide de la fédération, endosser un rôle IAM ou encore pour endosser un rôle intercompte. Vous obtenez des informations d'identification de sécurité temporaires en appelant des opérations d' AWS STS API telles que AssumeRoleou GetFederationToken.

AWS CodeStar prend en charge l'utilisation d'informations d'identification temporaires, mais la fonctionnalité réservée aux membres de l' AWS CodeStar équipe ne fonctionne pas pour l'accès fédéré. AWS CodeStar la fonctionnalité des membres de l'équipe prend uniquement en charge l'ajout d'un utilisateur IAM en tant que membre de l'équipe.

Rôles liés à un service

Les rôles liés aux AWS services permettent aux services d'accéder aux ressources d'autres services pour effectuer une action en votre nom. Les rôles liés à un service s’affichent dans votre compte IAM et sont la propriété du service. Un administrateur peut consulter mais ne peut pas modifier les autorisations concernant les rôles liés à un service.

AWS CodeStar ne prend pas en charge les rôles liés à un service.

Rôles de service

Cette fonction permet à un service d’endosser une fonction du service en votre nom. Ce rôle autorise le service à accéder à des ressources d’autres services pour effectuer une action en votre nom. Les rôles de service s’affichent dans votre compte IAM et sont la propriété du compte. Cela signifie qu'un administrateur peut modifier les autorisations associées à ce rôle. Toutefois, une telle action peut perturber le bon fonctionnement du service.

AWS CodeStar prend en charge les rôles de service. AWS CodeStar utilise un rôle de service lorsqu'il crée et gère les ressources de votre projet. aws-codestar-service-role Pour plus d'informations, consultez la section Termes et concepts relatifs aux rôles dans le guide de l'utilisateur d'IAM.

Important

Vous devez être connecté en tant qu'utilisateur administratif ou avec le compte racine pour créer ce rôle de service. Pour plus d'informations, voir Premier accès uniquement : informations d'identification de votre utilisateur root et Création de votre premier utilisateur et groupe d'administrateurs dans le guide de l'utilisateur IAM.

Ce rôle est créé pour vous la première fois que vous créez un projet dans AWS CodeStar. Le rôle de service agit en votre nom pour :

  • créer les ressources que vous choisissez lors de la création d'un projet ;

  • Affichez les informations relatives à ces ressources dans le tableau de bord AWS CodeStar du projet.

Il agit également en votre nom lorsque vous gérez les ressources d'un projet. Pour obtenir un exemple de cette déclaration de stratégie, veuillez consulter AWSCodeStarServiceRole Politique.

En outre, AWS CodeStar crée plusieurs rôles de service spécifiques au projet, en fonction du type de projet. AWS CloudFormation et des rôles de chaîne d'outils sont créés pour chaque type de projet.

  • AWS CloudFormation les rôles AWS CodeStar permettent d'accéder AWS CloudFormation pour créer et modifier des piles pour votre AWS CodeStar projet.

  • Les rôles de la chaîne d'outils permettent d'accéder AWS CodeStar à d'autres AWS services pour créer et modifier des ressources pour votre AWS CodeStar projet.