View a markdown version of this page

AWS Sign-In référence des clés de condition - AWS Sign-In

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.

AWS Sign-In référence des clés de condition

Cette page répertorie les clés de condition que vous pouvez utiliser dans les politiques AWS Sign-In basées sur les ressources et les politiques de contrôle des ressources (RCP), et indique la phase d'évaluation et les actions auxquelles chaque clé s'applique. Seule signin:PrincipalArn est spécifique à AWS Sign-In ; les autres sont des clés de condition AWS globales. Pour les définitions des clés globales, voir les clés contextuelles des conditions AWS globales.

Pour obtenir la liste complète des actions et des clés de condition dans la référence d'autorisation de service, voir Actions, ressources et clés de condition pour AWS Sign-In.

Network-based clés de condition

Ces clés de condition vérifient l'origine de la demande. AWS Sign-In les évalue pour toutes les AWS Sign-In actions (signin:Authenticate,signin:AuthorizeOAuth2Access, etsignin:CreateOAuth2Token) dans les politiques basées sur les ressources et les RCP.

Network-based clés de condition
Clé de condition Opérateurs Description Règles d'utilisation
aws:SourceIp IpAddress, NotIpAddress Adresse IP publique ou plage d'adresses CIDR Absent lorsqu'une demande utilise un point de terminaison VPC. Utilisez des IfExists opérateurs lorsque vous combinez VPC-based des conditions dans la même instruction.
aws:SourceVpc StringEquals, StringNotEquals ID VPC () vpc-xxxxxxxx Présent uniquement lorsqu'une demande utilise un point de terminaison VPC. Utilisez avec aws:RequestedRegion pour éviter toute collision d'identifiants VPC entre régions.
aws:SourceVpce StringEquals, StringNotEquals ID de point de terminaison VPC () vpce-xxxxxxxx Présent uniquement lorsqu'une demande utilise un point de terminaison VPC.
aws:VpcSourceIp IpAddress, NotIpAddress IP privée au sein du VPC Utilisez toujours la clé de aws:VpcSourceIp condition avec les clés de aws:SourceVpce condition aws:SourceVpc ou.
aws:RequestedRegion StringEquals, StringNotEquals Code de AWS région cible Recommandé lors de l'utilisation aws:SourceVpc pour éviter les collisions d'identifiants VPC entre régions. Plusieurs régions peuvent être spécifiées.
Important

Une seule demande contient soit aws:SourceIp (réseau public) soit aws:SourceVpc (point de terminaison VPC), mais pas les deux. Lorsque vous rédigez des politiques de refus couvrant les deux chemins, utilisez des IfExists opérateurs (par exempleNotIpAddressIfExists) ou créez des instructions distinctes.

Identity-based clés de condition

Ces clés de condition vérifient qui fait la demande. Ils ne sont disponibles que pour les actions post-authentification (signin:AuthorizeOAuth2Accessetsignin:CreateOAuth2Token), pour lesquelles l'identité principale a été établie.

Identity-based clés de condition
Clé de condition Opérateurs Description Exemples
aws:PrincipalArn ArnEquals, ArnLike, ArnNotEquals, StringEquals, StringLike ARN du principal IAM authentifié arn:aws:iam::123456789012:user/alice, arn:aws:iam::123456789012:role/Admin
aws:PrincipalAccount StringEquals, StringNotEquals AWS numéro de compte du mandant 123456789012

Service-specific clé de condition : connexion : PrincipalArn

La clé de condition suivante est spécifique à la clé globale AWS Sign-In et n'est pas une AWS clé globale. Il n'est disponible que lors de l'évaluation préalable à l'authentification. signin:PrincipalArnÀ utiliser pour identifier le principal initiateur de la connexion avant la fin de l'authentification. Il s'agit de l'équivalent de pré-authentification deaws:PrincipalArn, qui n'est disponible qu'après l'authentification.

Opérateurs

Opérateurs ARN (ArnEquals,ArnLike,ArnNotEquals,ArnNotLike) et opérateurs de chaîne (StringEquals,StringLike).

Disponibilité

AWS Sign-In inclut cette clé dans le contexte de la demande pendant la phase de pré-authentification (l'signin:Authenticateaction). Il n'est pas disponible pour les actions post-authentification (signin:AuthorizeOAuth2Accessetsignin:CreateOAuth2Token).

Type de données

ARN. Utilisez des opérateurs ARN plutôt que des opérateurs de chaîne.

Type de la valeur

Single-valued.

Pris en charge dans

Resource-based politiques et RCP.

Utilisez les opérateurs ARN pour comparer les valeurs. Vous pouvez spécifier les types principaux suivants :

  • Compte AWS utilisateur root (arn:aws:iam::123456789012:root)

  • Utilisateur IAM () arn:aws:iam::123456789012:user/user-name

  • Rôle IAM () arn:aws:iam::123456789012:role/role-name

Cas d'utilisation : exemptez une identité principale exclue des restrictions du réseau, empêchant ainsi le verrouillage tout en appliquant les contrôles réseau pour toutes les autres tentatives d'accès.

Exemple — Refuser l'accès préalable à l'authentification depuis des réseaux non autorisés, sauf pour l'utilisateur root :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Principal": { "AWS": "*" }, "Action": ["signin:Authenticate"], "Resource": "*", "Condition": { "ArnNotEquals": { "signin:PrincipalArn": "arn:aws:iam::123456789012:root" }, "NotIpAddress": { "aws:SourceIp": "203.0.113.0/24" }, "StringEquals": { "aws:ResourceAccount": "123456789012" } } }, { "Effect": "Deny", "Principal": { "AWS": "*" }, "Action": ["signin:CreateOAuth2Token", "signin:AuthorizeOAuth2Access"], "Resource": "*", "Condition": { "ArnNotEquals": { "aws:PrincipalArn": "arn:aws:iam::123456789012:root" }, "NotIpAddress": { "aws:SourceIp": "203.0.113.0/24" }, "StringEquals": { "aws:ResourceAccount": "123456789012" } } } ] }

Cette politique interdit l'accès à la console depuis l'extérieur de la plage d'203.0.113.0/24adresses IP, sauf pour l'utilisateur root du compte. L'instruction de pré-authentification est utilisée signin:PrincipalArn pour exempter l'utilisateur root avant la fin de l'authentification. L'instruction de post-authentification est utilisée aws:PrincipalArn pour exempter le même principal après authentification, lors de l'échange de jetons OAuth. Consultez Exemples de politiques.

Clés de condition OAuth

AWS Sign-In fournit des clés de OAuth-specific condition que vous pouvez utiliser dans les politiques IAM pour contrôler la manière dont les applications obtiennent l'autorisation OAuth et les jetons OAuth. Ces clés de condition vous permettent de restreindre les clients OAuth autorisés à se connecter, les URI de redirection fiables, les flux d'autorisation OAuth autorisés, la manière dont les clients OAuth s'authentifient et les jetons OAuth pouvant être gérés.

Les clés de condition OAuth peuvent être utilisées dans les politiques d'identité IAM, les politiques de contrôle des services (SCP), les politiques de contrôle des ressources (RCP) et d'autres types de politiques IAM qui prennent en charge les actions. AWS Sign-In

Les clés de condition OAuth suivantes sont disponibles.

Clé de condition Type Description Actions applicables
signin:OAuthClientId String Limite l'autorisation aux clients OAuth approuvés. signin:AuthorizeOAuth2Access, signin:CreateOAuth2Token, signin:IntrospectOAuth2Token
signin:OAuthRedirectUri String Limite l'autorisation OAuth aux URI de redirection approuvés. signin:AuthorizeOAuth2Access, signin:CreateOAuth2Token, signin:CreateOAuth2PublicClient
signin:OAuthGrantType String Contrôle les types de subventions OAuth autorisés. Valeurs :authorization_code,refresh_token,client_credentials. signin:CreateOAuth2Token
signin:OAuthClientAuthentication String Contrôle les méthodes d'authentification du client OAuth autorisées. signin:CreateOAuth2Token
signin:OAuthTokenType String Contrôle les opérations effectuées sur les jetons d'accès et d'actualisation OAuth. Valeurs :access_token,refresh_token. signin:RevokeOAuth2Token, signin:IntrospectOAuth2Token

connexion : OAuthClientId

signin:OAuthClientIdÀ utiliser pour autoriser ou refuser l'autorisation OAuth en fonction de la demande d'accès du client OAuth enregistré.

Les identifiants des clients OAuth sont représentés sous forme d'ARN d'enregistrement AWS Sign-In dynamique des clients (DCR).

Pour le flux non interactif (informations d'identification du client), l'ID client implicite estarn:aws:signin:::client-credentials/sigv4.

Actions applicables
  • signin:AuthorizeOAuth2Access

  • signin:CreateOAuth2Token

  • signin:IntrospectOAuth2Token

Exemple — Autoriser uniquement un client OAuth enregistré spécifique :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "signin:AuthorizeOAuth2Access", "signin:CreateOAuth2Token" ], "Resource": "arn:aws:signin:*:*:service-principal/aws-mcp.amazonaws.com", "Condition": { "StringEquals": { "signin:OAuthClientId": "arn:aws:signin:us-east-1::external-client/dcr/081e0aeb-e779-4dfe-9648-bd5bf6e6afa4" } } } ] }

connexion : OAuthRedirectUri

signin:OAuthRedirectUriÀ utiliser pour restreindre l'endroit où les réponses d'autorisation OAuth sont livrées.

Ceci est couramment utilisé pour garantir que les réponses d'autorisation OAuth ne sont renvoyées qu'aux URI de redirection fiables, tels que localhost pendant le développement.

Pour l'signin:CreateOAuth2PublicClientaction, cette clé de condition s'applique uniquement à l'évaluation de la politique du point de terminaison VPC (VPCE).

Actions applicables
  • signin:AuthorizeOAuth2Access

  • signin:CreateOAuth2Token

  • signin:CreateOAuth2PublicClient

Exemple — Autoriser l'autorisation basée sur le navigateur uniquement pour les URI de redirection localhost et uniquement pour les flux OAuth interactifs :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "signin:AuthorizeOAuth2Access", "signin:CreateOAuth2Token" ], "Resource": "arn:aws:signin:*:*:service-principal/aws-mcp.amazonaws.com", "Condition": { "StringLike": { "signin:OAuthRedirectUri": "http://localhost:*" }, "StringEquals": { "signin:OAuthGrantType": [ "authorization_code", "refresh_token" ] } } } ] }

connexion : OAuthGrantType

signin:OAuthGrantTypeÀ utiliser pour contrôler les types de subventions OAuth que les applications sont autorisées à utiliser.

Les valeurs prises en charge incluent :

  • authorization_code

  • refresh_token

  • client_credentials

Actions applicables
  • signin:CreateOAuth2Token

Exemple — Autorisez uniquement l'autorisation OAuth basée sur le navigateur tout en empêchant les applications d'utiliser l'autorisation d'identification du client :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "signin:CreateOAuth2Token", "Resource": "*", "Condition": { "StringEquals": { "signin:OAuthGrantType": [ "authorization_code", "refresh_token" ] } } } ] }

connexion : OAuthClientAuthentication

signin:OAuthClientAuthenticationÀ utiliser pour contrôler les méthodes d'authentification client que les clients OAuth peuvent utiliser lorsqu'ils demandent des jetons d'accès.

Valeur actuellement prise en charge :

  • none

Actions applicables
  • signin:CreateOAuth2Token

Exemple — Refuser les clients publics pour les opérations OAuth :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "signin:CreateOAuth2Token", "Resource": "*", "Condition": { "StringEquals": { "signin:OAuthClientAuthentication": "none" } } } ] }

connexion : OAuthTokenType

signin:OAuthTokenTypeÀ utiliser pour contrôler les types de jetons OAuth qui peuvent être introspectés ou révoqués.

Les valeurs prises en charge incluent :

  • access_token

  • refresh_token

Actions applicables
  • signin:IntrospectOAuth2Token

  • signin:RevokeOAuth2Token

Exemple — Autoriser la révocation des jetons d'actualisation uniquement :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "signin:RevokeOAuth2Token", "Resource": "*", "Condition": { "StringEquals": { "signin:OAuthTokenType": "refresh_token" } } } ] }

Disponibilité de la clé de condition par action

Le tableau suivant indique les clés de condition disponibles pour chaque action.

Clé de condition Se connecter : authentifier connexion : AuthorizeOAuth2Access connexion : CreateOAuth2Token connexion : RevokeOAuth2Token connexion : IntrospectOAuth2Token connexion : CreateOAuth2PublicClient
aws:SourceIp Oui Oui Oui Oui Oui Non
aws:SourceVpc Oui Oui Oui Oui Oui Non
aws:SourceVpce Oui Oui Oui Oui Oui Non
aws:VpcSourceIp Oui Oui Oui Oui Oui Non
aws:RequestedRegion Oui Oui Oui Oui Oui Non
aws:PrincipalArn Non Oui Oui Oui Oui Non
aws:PrincipalAccount Non Oui Oui Oui Oui Non
signin:PrincipalArn Oui Non Non Non Non Non
signin:OAuthClientId Non Oui Oui Non Oui Non
signin:OAuthRedirectUri Non Oui Oui Non Non Oui
signin:OAuthGrantType Non Non Oui Non Non Non
signin:OAuthClientAuthentication Non Non Oui Non Non Non
signin:OAuthTokenType Non Non Non Oui Oui Non
Note

L'signin:CreateAccountaction est utilisée exclusivement dans les politiques de point de terminaison VPC pour l'accès privé à la console et n'est pas disponible pour les politiques basées sur les ressources ou les RCP. Aucune clé de condition spécifique au service n'y est associée. Voir Accès privé à la console.