Identity and Access Management et Amazon CodeCatalyst - 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.

Identity and Access Management et Amazon CodeCatalyst

Dans Amazon CodeCatalyst, vous créez et utilisez un AWS Builder ID pour vous connecter et accéder à vos espaces et projets. Un AWS Builder ID n'est pas une identité dans AWS Identity and Access Management (IAM) et n'existe pas dans un Compte AWS. Cependant, il CodeCatalyst s'intègre à IAM lors de la vérification d'un espace à des fins de facturation et lorsqu'il est connecté Compte AWS à un espace pour y créer et utiliser des Compte AWS ressources.

AWS Identity and Access Management (IAM) est un outil Service AWS qui permet à un administrateur de contrôler en toute sécurité l'accès aux AWS ressources. Des administrateurs IAM contrôlent les personnes qui s'authentifient (sont connectées) et sont autorisées (disposent d'autorisations) à utiliser des ressources . IAM est un Service AWS outil que vous pouvez utiliser sans frais supplémentaires.

Lorsque vous créez un espace sur Amazon CodeCatalyst, vous devez en connecter un Compte AWS comme compte de facturation pour votre espace. Vous devez disposer des autorisations d'administrateur Compte AWS pour vérifier l' CodeCatalyst espace, ou vous devez avoir l'autorisation. Vous avez également la possibilité d'ajouter un rôle IAM à votre espace, qui CodeCatalyst peut être utilisé pour créer et accéder aux ressources de l'espace connecté Compte AWS. C'est ce que l'on appelle un rôle de service. Vous pouvez choisir de créer des connexions avec plusieurs comptes Compte AWS et de créer des rôles de service pour CodeCatalyst chacun de ces comptes.

Note

La facturation CodeCatalyst a lieu sur le compte Compte AWS désigné comme étant le compte de facturation. Toutefois, si vous créez un rôle de CodeCatalyst service dans ce rôle Compte AWS ou dans tout autre service connecté Compte AWS, les ressources créées et utilisées par le rôle de CodeCatalyst service seront facturées dans ce rôle connecté Compte AWS. Pour plus d'informations, consultez la section Gestion de la facturation dans le manuel Amazon CodeCatalyst Administrator Guide.

Politiques basées sur l'identité dans IAM

Les politiques basées sur l'identité sont des documents de politique d'autorisation JSON que vous pouvez joindre à une identité. Cette identité peut être un utilisateur, un groupe d'utilisateurs ou un rôle. Ces politiques contrôlent quel type d’actions des utilisateurs et des rôles peuvent exécuter, sur quelles ressources et dans quelles conditions. Pour découvrir comment créer une politique basée sur l’identité, consultez Création de politiques IAM dans le Guide de l’utilisateur IAM.

Avec les politiques IAM basées sur l’identité, vous pouvez spécifier des actions et ressources autorisées ou refusées, ainsi que les conditions dans lesquelles les actions sont autorisées ou refusées. Vous ne pouvez pas spécifier le principal dans une politique basée sur une identité car celle-ci s’applique à l’utilisateur ou au rôle auquel elle est attachée. Pour découvrir 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.

Exemples de stratégies basées sur l’identité pour CodeCatalyst

Pour consulter des exemples de politiques CodeCatalyst basées sur l'identité, consultez. Exemples de politiques basées sur l'identité pour les connexions CodeCatalyst

Actions politiques dans IAM

Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C'est-à-dire quel principal peut effectuer quelles 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.

Pour indiquer plusieurs actions dans une seule déclaration, séparez-les par des virgules.

"Action": [ "prefix:action1", "prefix:action2" ]

Ressources relatives aux politiques dans IAM

Les administrateurs peuvent utiliser les politiques AWS JSON pour spécifier qui a accès à quoi. C'est-à-dire quel principal peut effectuer quelles 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": "*"

Clés de conditions de politique dans IAM

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

L’élément Condition (ou le bloc Condition) vous permet de spécifier des conditions lorsqu’une instruction est appliquée. L’élément Condition est facultatif. Vous pouvez créer des expressions conditionnelles qui utilisent des opérateurs de condition, tels que les signes égal ou inférieur à, pour faire correspondre la condition de la politique aux valeurs de la demande.

Si vous spécifiez plusieurs éléments Condition dans une instruction, ou plusieurs clés dans un seul élément Condition, AWS les évalue à l’aide d’une opération AND logique. Si vous spécifiez plusieurs valeurs pour une seule clé de condition, AWS évalue la condition à l’aide d’une opération OR logique. Toutes les conditions doivent être remplies avant que les autorisations associées à l’instruction ne soient accordées.

Vous pouvez aussi utiliser des variables d’espace réservé quand vous spécifiez des conditions. Pour plus d’informations, consultez Éléments d’une politique IAM : variables et identifications dans le Guide de l’utilisateur IAM.

AWS prend en charge les clés de condition globales et les clés de condition spécifiques au service. Pour afficher toutes les clés de condition globales AWS , consultez Clés de contexte de condition globale AWS dans le Guide de l’utilisateur IAM.

Exemples de politiques basées sur l'identité pour les connexions CodeCatalyst

Dans CodeCatalyst, Comptes AWS sont nécessaires pour gérer la facturation d'un espace et pour accéder aux ressources dans les flux de travail du projet. Une connexion au compte est utilisée pour autoriser l'ajout Comptes AWS à un espace. Des politiques basées sur l'identité sont utilisées dans le connecté. Comptes AWS

Par défaut, les utilisateurs et les rôles ne sont pas autorisés à créer ou à modifier CodeCatalyst des ressources. Ils ne peuvent pas non plus effectuer de tâches à l'aide de l'API AWS Management Console, AWS Command Line Interface (AWS CLI) ou de AWS l'API. Un administrateur IAM doit créer des politiques IAM autorisant les utilisateurs et les rôles à exécuter des actions sur les ressources dont ils ont besoin. L'administrateur doit ensuite attacher ces stratégies aux utilisateurs qui en ont besoin.

Les exemples de politiques IAM suivants accordent des autorisations pour les actions liées aux connexions aux comptes. Utilisez-les pour limiter l'accès à des comptes connectés à CodeCatalyst.

Exemple 1 : Autoriser un utilisateur à accepter des demandes de connexion en une seule fois Région AWS

La politique d'autorisation suivante permet uniquement aux utilisateurs de consulter et d'accepter les demandes de connexion entre CodeCatalyst et Comptes AWS. En outre, la politique utilise une condition pour autoriser uniquement les actions dans la région us-west-2 et non depuis une autre région. Régions AWS Pour consulter et approuver la demande, l'utilisateur se connecte AWS Management Console avec le même compte que celui spécifié dans la demande.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codecatalyst:AcceptConnection", "codecatalyst:GetPendingConnection" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestedRegion": "us-west-2" } } } ] }

Exemple 2 : Autoriser la gestion des connexions dans la console pour un Région AWS

La politique d'autorisation suivante permet aux utilisateurs de gérer les connexions entre CodeCatalyst et Comptes AWS dans une même région. La politique utilise une condition pour autoriser uniquement les actions dans la région us-west-2 et non depuis une autre région. Régions AWS Après avoir créé une connexion, vous pouvez créer le CodeCatalystWorkflowDevelopmentRole-spaceNamerôle en choisissant l'option dans le AWS Management Console. Dans l'exemple de politique, la condition de l'iam:PassRoleaction inclut les principes de service pour CodeCatalyst. Seuls les rôles dotés de cet accès seront créés dans le AWS Management Console.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codecatalyst:*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestedRegion": "us-west-2" } } }, { "Effect": "Allow", "Action": [ "iam:CreateRole", "iam:CreatePolicy", "iam:AttachRolePolicy", "iam:ListRoles" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": [ "codecatalyst.amazonaws.com", "codecatalyst-runner.amazonaws.com" ] } } } ] }

Exemple 3 : Refuser la gestion des connexions

La politique d'autorisation suivante refuse aux utilisateurs toute possibilité de gérer les connexions entre CodeCatalyst et Comptes AWS.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "codecatalyst:*" ], "Resource": "*" } ] }

CodeCatalyst référence aux autorisations

Cette section fournit une référence d'autorisations pour les actions utilisées avec la ressource de connexion au compte à Comptes AWS laquelle vous êtes connecté CodeCatalyst. La section suivante décrit les actions relatives aux autorisations uniquement liées à la connexion de comptes.

Autorisations requises pour les connexions aux comptes

Les autorisations suivantes sont requises pour utiliser les connexions aux comptes.

CodeCatalyst autorisations pour les connexions aux comptes Autorisations nécessaires Ressources
AcceptConnection Nécessaire pour accepter une demande de connexion de ce compte à un CodeCatalyst espace. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API.

Prend en charge uniquement un caractère générique (*) dans l'élément Resource de stratégie.

AssociateIamRoleToConnection Nécessaire pour associer un rôle IAM à une connexion à un compte. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
DeleteConnection Nécessaire pour supprimer une connexion au compte. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
DisassociateIamRoleFromConnection Nécessaire pour dissocier un rôle IAM d'une connexion à un compte. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
GetBillingAuthorization Obligatoire pour décrire l'autorisation de facturation pour une connexion à un compte. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
GetConnection Nécessaire pour établir une connexion à un compte. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
GetPendingConnection Nécessaire pour obtenir une demande en attente pour connecter ce compte à un CodeCatalyst espace. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API.

Prend en charge uniquement un caractère générique (*) dans l'élément Resource de stratégie.

ListConnections Obligatoire pour répertorier les connexions aux comptes qui ne sont pas en attente. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API.

Prend en charge uniquement un caractère générique (*) dans l'élément Resource de stratégie.

ListIamRolesForConnection Obligatoire pour répertorier les rôles IAM associés à une connexion à un compte. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
ListTagsForResource Obligatoire pour répertorier les tags associés à une connexion à un compte. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
PutBillingAuthorization Nécessaire pour créer ou mettre à jour l'autorisation de facturation pour une connexion à un compte. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
RejectConnection Nécessaire pour rejeter une demande de connexion de ce compte à un CodeCatalyst espace. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API.

Prend en charge uniquement un caractère générique (*) dans l'élément Resource de stratégie.

TagResource Nécessaire pour créer ou modifier des balises associées à une connexion à un compte. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
UntagResource Nécessaire pour supprimer les tags associés à une connexion à un compte. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID

Autorisations requises pour les applications IAM Identity Center

Les autorisations suivantes sont requises pour utiliser les applications IAM Identity Center.

CodeCatalyst autorisations pour les applications IAM Identity Center Autorisations nécessaires Ressources
AssociateIdentityCenterApplicationToSpace Nécessaire pour associer une application IAM Identity Center à un CodeCatalyst espace. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
AssociateIdentityToIdentityCenterApplication Nécessaire pour associer une identité à une application IAM Identity Center pour un CodeCatalyst espace. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
BatchAssociateIdentitiesToIdentityCenterApplication Nécessaire pour associer plusieurs identités à une application IAM Identity Center pour un CodeCatalyst espace. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
BatchDisassociateIdentitiesFromIdentityCenterApplication Nécessaire pour dissocier plusieurs identités d'une application IAM Identity Center pour un CodeCatalyst espace. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
CreateIdentityCenterApplication Nécessaire pour créer une application IAM Identity Center. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
CreateSpaceAdminRoleAssignment Nécessaire pour créer une attribution de rôle d'administrateur pour un CodeCatalyst espace donné et une application IAM Identity Center. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
DeleteIdentityCenterApplication Nécessaire pour supprimer une application IAM Identity Center. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
DisassociateIdentityCenterApplicationFromSpace Nécessaire pour dissocier une application IAM Identity Center d'un CodeCatalyst espace. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
DisassociateIdentityFromIdentityCenterApplication Nécessaire pour dissocier une identité d'une application IAM Identity Center pour un CodeCatalyst espace. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
GetIdentityCenterApplication Nécessaire pour obtenir des informations sur une application IAM Identity Center. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
ListIdentityCenterApplications Nécessaire pour consulter la liste de toutes les applications IAM Identity Center du compte. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API.

Prend en charge uniquement un caractère générique (*) dans l'élément Resource de stratégie.

ListIdentityCenterApplicationsForSpace Nécessaire pour afficher la liste des applications IAM Identity Center par CodeCatalyst espace. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
ListSpacesForIdentityCenterApplication Nécessaire pour afficher la liste des CodeCatalyst espaces par application IAM Identity Center. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
SynchronizeIdentityCenterApplication Nécessaire pour synchroniser une application IAM Identity Center avec le magasin d'identités sous-jacent. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
UpdateIdentityCenterApplication Nécessaire pour mettre à jour une application IAM Identity Center. Il s'agit d'une autorisation de stratégie IAM uniquement, pas d'une action d'API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID