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.
Identifiants IAM
IAM utilise quelques identifiants différents pour les utilisateurs, les groupes IAM, les rôles, les politiques et les certificats de serveur. Cette section décrit les identifiants et quand vous utilisez chacun d'eux.
Rubriques
Noms conviviaux et chemins
Lorsque vous créez un utilisateur, un rôle, un groupe d'utilisateurs ou une politique, ou lorsque vous téléchargez un certificat de serveur, vous lui attribuez un nom convivial. Les exemples incluent Bob, TestApp 1 an, Developers ManageCredentialsPermissions, ou ProdServerCert.
Si vous utilisez l'API IAM ou AWS Command Line Interface (AWS CLI) pour créer des ressources IAM, vous pouvez ajouter un chemin facultatif. Vous pouvez utiliser un seul chemin ou imbriquer plusieurs chemins en une structure de dossiers. Par exemple, vous pouvez utiliser le chemin imbriqué /division_abc/subdivision_xyz/product_1234/engineering/ pour correspondre à l'organigramme de votre société. Vous pouvez ensuite créer une politique pour autoriser tous les utilisateur dans ce chemin à accéder à l'API de simulateur de politique. Pour afficher cette politique, consultez IAM : accès à l'API du simulateur de politique en fonction du chemin d'utilisateur. Pour plus d'informations sur la façon dont un nom convivial peut être spécifié, consultez la documentation de l'API utilisateur. Pour trouver des exemples de la manière dont vous pouvez utiliser des chemins, consultez ARN IAM.
Lorsque vous créez CloudFormation des ressources, vous pouvez spécifier un chemin pour les utilisateurs, les groupes et rôles IAM, ainsi que les politiques gérées par le client.
Si vous avez un utilisateur et un groupe d'utilisateurs sur le même chemin, IAM ne place pas automatiquement l'utilisateur dans ce groupe d'utilisateurs. Par exemple, vous pouvez créer un groupe d'utilisateurs Développeurs et spécifier le chemin d'accès comme /division_abc/subdivision_xyz/product_1234/engineering/. Si vous créez un utilisateur nommé Bob et lui ajoutez le même chemin, cela ne place pas Bob automatiquement dans le groupe d'utilisateurs Développeurs. IAM n’impose aucune limite entre utilisateurs ou groupes IAM en fonction de leurs chemins. Les utilisateurs ayant des chemins différents peuvent utiliser les mêmes ressources en supposant qu'ils aient autorisation d'accéder à ces ressources. Le nombre et la taille des ressources IAM d'un AWS compte sont limités. Pour de plus amples informations, veuillez consulter IAM et AWS STS quotas.
ARN IAM
Les plupart des ressources ont un nom convivial, par exemple, un utilisateur appelé Bob ou un groupe d'utilisateurs appelé Developers. Toutefois, le langage de politique d'autorisation nécessite que vous indiquiez la ou les ressources au format Amazon Resource Name (ARN) suivant.
arn:partition:service:region:account:resource
Où :
-
partitionidentifie la partition pour la ressource. Pour les régions AWS standard, la partition estaws. Si vous avez des ressources dans d’autres partitions, la partition estaws-. Par exemple, la partition des ressources de la région Chine (Beijing) estpartitionnameaws-cn. Vous ne pouvez pas déléguer l'accès entre comptes dans différentes partitions. -
serviceidentifie le AWS produit. Les ressources IAM utilisent toujoursiam. -
regionidentifie la région de la ressource. Pour les ressources IAM, elle est toujours laissée vide. -
accountspécifie l' Compte AWS identifiant sans tiret. -
resourceidentifie la ressources spécifique par nom.
Vous pouvez spécifier IAM et ARN à l' AWS STS aide de la syntaxe suivante. La partie de la région de l'ARN est vide, car les ressources IAM sont globales.
Syntaxe :
arn:aws:iam::account:root arn:aws:iam::account:user/user-name-with-patharn:aws:iam::account:group/group-name-with-patharn:aws:iam::account:role/role-name-with-patharn:aws:iam::account:policy/policy-name-with-patharn:aws:iam::account:instance-profile/instance-profile-name-with-patharn:aws:sts::account:federated-user/user-namearn:aws:sts::account:assumed-role/role-name/role-session-namearn:aws:sts::account:self arn:aws:iam::account:mfa/virtual-device-name-with-patharn:aws:iam::account:u2f/u2f-token-idarn:aws:iam::account:server-certificate/certificate-name-with-patharn:aws:iam::account:saml-provider/provider-namearn:aws:iam::account:oidc-provider/provider-namearn:aws:iam::aws:contextProvider/context-provider-name
Bon nombre des exemples suivants incluent des chemins dans la partie des ressources de l'ARN. Les chemins ne peuvent pas être créés ou manipulés dans l'interface Console de gestion AWS. Pour utiliser les chemins, vous devez utiliser la ressource à l'aide de l' AWS API, des outils ou des outils pour Windows PowerShell. AWS CLI
Exemples :
arn:aws:iam::123456789012:root arn:aws:iam::123456789012:user/John arn:aws:iam::123456789012:user/division_abc/subdivision_xyz/Jane arn:aws:iam::123456789012:group/Developers arn:aws:iam::123456789012:group/division_abc/subdivision_xyz/product_A/Developers arn:aws:iam::123456789012:role/S3Access arn:aws:iam::123456789012:role/application_abc/component_xyz/RDSAccess arn:aws:iam::123456789012:role/aws-service-role/access-analyzer.amazonaws.com/AWSServiceRoleForAccessAnalyzer arn:aws:iam::123456789012:role/service-role/QuickSightAction arn:aws:iam::123456789012:policy/UsersManageOwnCredentials arn:aws:iam::123456789012:policy/division_abc/subdivision_xyz/UsersManageOwnCredentials arn:aws:iam::123456789012:instance-profile/Webserver arn:aws:sts::123456789012:federated-user/John arn:aws:sts::123456789012:assumed-role/Accounting-Role/Jane arn:aws:sts::123456789012:self arn:aws:iam::123456789012:mfa/JaneMFA arn:aws:iam::123456789012:u2f/user/John/default (U2F security key) arn:aws:iam::123456789012:server-certificate/ProdServerCert arn:aws:iam::123456789012:server-certificate/division_abc/subdivision_xyz/ProdServerCert arn:aws:iam::123456789012:saml-provider/ADFSProvider arn:aws:iam::123456789012:oidc-provider/GoogleProvider arn:aws:iam::123456789012:oidc-provider/oidc.eks.us-west-2.amazonaws.com/id/a1b2c3d4567890abcdefEXAMPLE11111 arn:aws:iam::123456789012:oidc-provider/server.example.org arn:aws:iam::aws:contextProvider/IdentityCenter
Les exemples suivants fournissent plus de détails pour vous aider à comprendre le format ARN pour différents types d'IAM et de AWS STS ressources.
-
Un utilisateur IAM dans le compte :
Note
Chaque nom d'utilisateur IAM est unique. Le nom d'utilisateur est sensible à la casse pour l'utilisateur, par exemple lors du processus de connexion, mais il l'est également lorsque vous l'utilisez dans une politique ou dans le cadre d'un ARN.
arn:aws:iam::123456789012:user/John -
Un autre utilisateur avec un chemin reflétant un organigramme :
arn:aws:iam::123456789012:user/division_abc/subdivision_xyz/Jane -
Pour un groupe d'utilisateurs IAM :
arn:aws:iam::123456789012:group/Developers -
Un groupe d'utilisateurs IAM avec un chemin :
arn:aws:iam::123456789012:group/division_abc/subdivision_xyz/product_A/Developers -
Un rôle IAM :
arn:aws:iam::123456789012:role/S3Access -
arn:aws:iam::123456789012:role/aws-service-role/access-analyzer.amazonaws.com/AWSServiceRoleForAccessAnalyzer -
Un rôle de service :
arn:aws:iam::123456789012:role/service-role/QuickSightAction -
Une politique gérée :
arn:aws:iam::123456789012:policy/ManageCredentialsPermissions -
Un profil d'instance qui peut être associé à une instance Amazon EC2 :
arn:aws:iam::123456789012:instance-profile/Webserver -
Un utilisateur principal AWS STS fédéré identifié dans IAM comme « Paulo » :
arn:aws:sts::123456789012:federated-user/Paulo -
La session active d'une personne assumant le rôle de Accounting-Role « », dont le nom de session de rôle est « Mary » :
arn:aws:sts::123456789012:assumed-role/Accounting-Role/Mary -
Représente la propre session de l'appelant lorsqu'elle est utilisée comme ressource dans un appel d'API, tel que l' AWS STS SetContextAPI, qui fonctionne sur la session d'appel :
arn:aws:sts::123456789012:self -
L'appareil MFA (Multi-Factor Authentication) attribué à l'utilisateur nommé Jorge :
arn:aws:iam::123456789012:mfa/Jorge -
Un certificat de serveur :
arn:aws:iam::123456789012:server-certificate/ProdServerCert -
Un certificat de serveur avec un chemin qui reflète un organigramme :
arn:aws:iam::123456789012:server-certificate/division_abc/subdivision_xyz/ProdServerCert -
Fournisseurs d'identité (SAML et OIDC) :
arn:aws:iam::123456789012:saml-provider/ADFSProvider arn:aws:iam::123456789012:oidc-provider/GoogleProvider arn:aws:iam::123456789012:oidc-provider/server.example.org -
Un fournisseur d'identité OIDC avec un chemin qui reflète l'URL d'un fournisseur d'identité OIDC d'Amazon EKS :
arn:aws:iam::123456789012:oidc-provider/oidc.eks.us-west-2.amazonaws.com/id/a1b2c3d4567890abcdefEXAMPLE11111 -
L'ARN du fournisseur de contexte utilisé pour la propagation d'identité AWS IAM Identity Center sécurisée, à partir duquel l'assertion de contexte fiable a été générée :
arn:aws:iam::aws:contextProvider/IdentityCenter
Autre ARN important : celui de l'utilisateur racine. Bien qu'il ne s'agisse pas d'une ressource IAM, vous devez connaître le format de cet ARN. Il est souvent utilisé dans l'élément Principal d'une stratégie.
-
Les éléments suivants Compte AWS s'affichent :
arn:aws:iam::123456789012:root
L'exemple suivant montre une politique que vous pouvez affecter à Richard afin de lui permettre de gérer ses clés d'accès. Notez que la ressource est l'utilisateur IAM Richard.
Note
Lorsque vous utilisez des ARN pour identifier des ressources dans une politique IAM, vous pouvez inclure des variables de politique. Les variables de politique peuvent inclure des espaces réservés pour les informations d'exécution (notamment le nom de l'utilisateur) comme faisant partie de l'ARN. Pour plus d'informations, veuillez consulter Éléments des politiques IAM : variables et balises.
Utilisation de caractères génériques et de chemins dans les ARN
Vous pouvez utiliser des caractères génériques dans la resource partie de l'ARN pour spécifier plusieurs utilisateurs ou groupes ou politiques IAM. Par exemple, pour spécifier tous les utilisateurs travaillant sur le produit_1234, vous utilisez :
arn:aws:iam::123456789012:user/division_abc/subdivision_xyz/product_1234/*
Si vous avez des utilisateurs dont le nom commence par la chaîne app_, vous pouvez faire référence à tous ces utilisateurs avec l'ARN suivant.
arn:aws:iam::123456789012:user/division_abc/subdivision_xyz/product_1234/app_*
Pour spécifier tous les utilisateurs, groupes IAM ou politiques de votre Compte AWS, utilisez un caractère générique après le user/group/, ou une policy/ partie de l'ARN, respectivement.
arn:aws:iam::123456789012:user/* arn:aws:iam::123456789012:group/* arn:aws:iam::123456789012:policy/*
Si vous spécifiez l'ARN suivant pour un utilisateur arn:aws:iam::111122223333:user/*, il correspond aux deux exemples suivants.
arn:aws:iam::111122223333:user/John arn:aws:iam::111122223333:user/division_abc/subdivision_xyz/JaneDoe
Mais, si vous spécifiez l'ARN suivant pour un utilisateur arn:aws:iam::111122223333:user/division_abc*, il correspond au second exemple, mais pas au premier.
arn:aws:iam::111122223333:user/John arn:aws:iam::111122223333:user/division_abc/subdivision_xyz/Jane
N'utilisez pas un caractère générique dans la partie user/, group/ ou policy/ de l'ARN. Par exemple, IAM n'autorise pas ce qui suit :
arn:aws:iam::123456789012:u*
Note
Lorsque vous spécifiez un ARN incomplet (un contenant moins de six champs standard) dans une politique basée sur l'identité, complète AWS automatiquement l'ARN en ajoutant des caractères génériques (*) à tous les champs manquants. Par exemple, spécifier arn:aws:sqs est équivalent àarn:aws:sqs:*:*:*, ce qui donne accès à toutes les ressources Amazon Amazon SQS dans toutes les régions et tous les comptes. Cependant, les politiques de session transmises et AWS STS AssumeRole AssumeRoleWithWebIdentity les AssumeRoleWithSAML demandes ne prennent pas en charge les ARN incomplets. L'utilisation d'un ARN incomplet dans une politique de session entraînera une MalformedPolicyDocumentException erreur.
Exemple Exemple d'utilisation des chemins et des ARN d'un groupe d'utilisateurs basé sur un projet
Les chemins ne peuvent pas être créés ou manipulés dans l'interface Console de gestion AWS. Pour utiliser les chemins, vous devez utiliser la ressource à l'aide de l' AWS API AWS CLI, de ou des Outils pour Windows PowerShell.
Dans cet exemple, Jules du groupe Marketing_Admin d'utilisateurs crée un groupe d'utilisateurs basé sur un projet dans le chemin /marketing/. Il attribue des utilisateurs de différentes parties de l'entreprise au groupe d'utilisateurs. Cet exemple illustre que le chemin d'un utilisateur n'est pas lié aux groupes d'utilisateurs dont fait partie l'utilisateur.
Le groupe marketing a un nouveau produit qu'il va lancer. Jules crée donc un nouveau groupe d'utilisateurs dans le chemin /marketing/ appelé. Widget_Launch Jules affecte ensuite la politique suivante au groupe d'utilisateurs qui accorde à celui-ci l'accès aux objets situés dans la partie du example_bucket désigné pour ce lancement spécifique.
Jules affecte ensuite les utilisateurs qui travaillent sur ce lancement au groupe d'utilisateurs. Cela inclut Patricia et Eli du chemin /marketing/. Cela inclut également Chris et Chloe du chemin /sales/ et Alice et Jim du chemin /legal/.
Identifiants uniques
Lorsqu'IAM crée un utilisateur, un groupe d'utilisateurs, un rôle, une stratégie, un profil d'instance ou un certificat de serveur, il accorde à chaque ressource un ID unique. L'ID se présente comme suit :
AIDAJQABLZS4A3QDU576Q
En règle générale, vous avez recours à des noms conviviaux et à des ARN lorsque vous utilisez des ressources IAM. De la sorte, vous n'avez pas besoin de connaître l'ID unique d'une ressource spécifique. En revanche, l'ID unique peut parfois être utile quand il n'est pratique d'utiliser des noms conviviaux.
Un exemple réutilise des noms conviviaux dans votre Compte AWS. Dans votre compte, un nom convivial pour un utilisateur, un groupe d'utilisateurs ou une stratégie doivent être uniques. Par exemple, vous pouvez créer un utilisateur IAM appelé John. Votre entreprise utilise Amazon S3 et dispose d'un compartiment avec des dossiers pour chaque employé. L'utilisateur IAM John est membre d'un groupe d'utilisateurs IAM appelé User-S3-Access avec des autorisations qui permettent aux utilisateurs d'accéder uniquement à leurs propres dossiers dans le compartiment. Pour obtenir un exemple de création d'une stratégie basée sur l'identité qui autorise des utilisateurs IAM à accéder à leur propre objet de compartiment dans S3 à l'aide du nom convivial des utilisateurs, consultez Amazon S3 : autorise les utilisateurs IAM à accéder à leur répertoire de base S3, par programmation et dans la console.
Supposons que l'employé appelé John quitte votre entreprise et que vous supprimez l'utilisateur IAM correspondant appelé John. Mais plus tard, un autre employé appelé John commence à travailler pour votre entreprise et vous créez un utilisateur IAM appelé John. Vous ajoutez le nouvel utilisateur IAM appelé John au groupe d'utilisateurs IAM User-S3-Access existant. Si la stratégie associée au groupe d'utilisateurs spécifie le nom d''utilisateur IAM convivial John, la stratégie permet au nouveau John d'accéder aux informations laissées par l'ancien John.
En règle générale, nous vous recommandons de spécifier l'ARN de la ressource dans vos politiques au lieu de son ID unique. En revanche, chaque utilisateur IAM dispose d'un ID unique, même si vous créez un utilisateur IAM qui réutilise un nom convivial que vous avez supprimé avant. Dans l'exemple, l'ancien utilisateur IAM John et le nouvel utilisateur IAM John ont des ID uniques distincts. Vous pouvez créer des politiques basées sur les ressources qui accordent l'accès par ID unique et pas seulement par nom d'utilisateur. Vous réduisez ainsi le risque d'accorder par inadvertance l'accès à des informations dont un employé ne devrait pas disposer.
L'exemple suivant montre comment spécifier des ID uniques dans l'élément Principal principal d'une stratégie basée sur les ressources.
"Principal": { "AWS": [ "arn:aws:iam::111122223333:role/role-name", "AIDACKCEVSQ6C2EXAMPLE", "AROADBQP57FF2AEXAMPLE" }
L'exemple suivant montre comment spécifier des ID uniques dans l'élément Condition principal d'une stratégie en utilisant une clé de condition globale aws:userid.
"Condition": { "StringLike": { "aws:userId": [ "AIDACKCEVSQ6C2EXAMPLE", "AROADBQP57FF2AEXAMPLE:role-session-name", "AROA1234567890EXAMPLE:*", "111122223333" ] } }
Un autre exemple dans lequel les ID d'utilisateur puevent être utiles c'est lorsque vous maintenez votre propre base de données (ou autre moyen de stockage) d'un utilisateur IAM ou d'informations sur les rôles. L'ID unique peut fournir un identifiant unique pour chaque utilisateur IAM que vous créez. Cela reste vrai lorsque vous avez des utilisateurs IAM ou des rôles qui réutilisent un nom, comme dans l'exemple précédent.
Présentation des préfixes d'ID uniques
IAM utilise les préfixes suivants pour indiquer le type de ressource auquel chaque ID unique s'applique. Les préfixes peuvent varier en fonction de leur date de création.
| Préfixe | Type de ressource |
|---|---|
| ABIA | AWS STS jeton de service |
| ACCA | Context-specific justificatif |
|
AGPA |
Groupe d'utilisateurs |
|
AIDA |
Utilisateur IAM |
| AIPA | Profil d'instance Amazon EC2 |
| AKIA | Clé d'accès |
| ANPA |
Politique gérée |
|
ANVA |
La version d'une politique gérée |
| APKA | Clé publique |
| AROA | Role |
| ASCA | Certificat |
|
ASIA |
Les ID de clé d'accès temporaire (AWS STS) utilisent ce préfixe, mais ne sont uniques qu'en combinaison avec la clé d'accès secrète et le jeton de session. |
Obtention de l'identifiant unique
L'ID unique d'une ressource IAM n'est pas disponible dans la console IAM. Pour obtenir l'identifiant unique, vous pouvez utiliser les AWS CLI commandes ou les appels d'API IAM suivants.
AWS CLI:
API IAM