View a markdown version of this page

Fonctionnement d’Amazon Cognito avec IAM - Amazon Cognito

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.

Fonctionnement d’Amazon Cognito avec IAM

Avant d’utiliser IAM pour gérer l’accès à Amazon Cognito, découvrez les fonctionnalités IAM que vous pouvez utiliser avec Amazon Cognito.

Pour obtenir une vue d'ensemble de la façon dont Amazon Cognito et les autres AWS services fonctionnent avec la plupart des fonctionnalités IAM, consultez les AWS services compatibles avec IAM dans le guide de l'utilisateur IAM.

Identity-based politiques relatives à Amazon Cognito

Prend en charge les politiques basées sur l’identité : oui

Identity-based les politiques sont des documents de politique d'autorisation JSON que vous pouvez associer à une identité, telle qu'un utilisateur IAM, 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 Définition d’autorisations IAM personnalisées avec des politiques gérées par le client 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. 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.

Identity-based exemples de politiques pour Amazon Cognito

Pour voir des exemples de politiques basées sur une identité pour Amazon Cognito, consultez Identity-based exemples de politiques pour Amazon Cognito.

Resource-based politiques au sein d'Amazon Cognito

Prend en charge les politiques basées sur les ressources : non

Resource-based les politiques sont des documents de politique JSON que vous attachez à une ressource. Par exemple, les politiques de confiance de rôle IAM et les politiques de compartiment Amazon S3 sont des politiques basées sur les ressources. Dans les services qui sont compatibles avec les politiques basées sur les ressources, les administrateurs de service peuvent les utiliser pour contrôler l’accès à une ressource spécifique. Pour la ressource dans laquelle se trouve la politique, cette dernière définit quel type d’actions un principal spécifié peut effectuer sur cette ressource et dans quelles conditions. Vous devez spécifier un principal dans une politique basée sur les ressources. Les principaux peuvent inclure des comptes, des utilisateurs, des rôles, des utilisateurs fédérés ou. Services AWS

Pour permettre un accès intercompte, vous pouvez spécifier un compte entier ou des entités IAM dans un autre compte en tant que principal dans une politique basée sur les ressources. Pour plus d’informations, consultez Accès intercompte aux ressources dans IAM dans le Guide de l’utilisateur IAM.

Actions de politique pour Amazon Cognito

Prend en charge les actions de politique : oui

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. Intégration d’actions dans une politique afin d’accorder l’autorisation d’exécuter les opérations associées.

Pour afficher la liste des actions Amazon Cognito, consultez Actions définies par Amazon Cognito dans Référence de l’autorisation de service.

Les actions de politique dans Amazon Cognito utilisent le préfixe suivant avant l’action :

cognito-identity

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

"Action": [ "cognito-identity:action1", "cognito-identity:action2" ]

API signées et non signées

Lorsque vous signez des demandes d'API Amazon Cognito avec des AWS informations d'identification, vous pouvez les restreindre dans une politique Gestion des identités et des accès AWS (IAM). Les demandes d’API avec lesquelles vous devez signer les informations d’identification AWS incluent la connexion côté serveur avec AdminInitiateAuth, ainsi que des actions permettant de créer, d’afficher ou de modifier vos ressources Amazon Cognito, telles que UpdateUserPool. Pour plus d'informations sur les demandes d'API signées, consultez la section Signature des demandes AWS d'API.

Amazon Cognito étant un produit d’identité client destiné aux applications que vous souhaitez mettre à la disposition du public, vous avez accès aux API non signées suivantes. Votre application envoie ces requêtes d’API à vos utilisateurs et à vos utilisateurs potentiels. Certaines API ne nécessitent aucune autorisation préalable, comme InitiateAuth pour démarrer une nouvelle session d’authentification. Certaines API utilisent des jetons d’accès ou des clés de session pour l’autorisation, comme VerifySoftwareToken pour terminer la configuration MFA pour un utilisateur disposant déjà d’une session authentifiée. Une API des groupes d’utilisateurs Amazon Cognito autorisée et non signée prend en charge une paramètre Session ou AccessToken dans la syntaxe de la requête, telle qu’elle est affichée dans Référence d’API Amazon Cognito. Une API Amazon Cognito Identity non signée prend en charge un paramètre IdentityId tel qu’affiché dans la Référence d’API des identités fédérées d’Amazon Cognito.

Pour plus d’informations sur les rôles et modèles d’autorisation des opérations d’API des groupes d’utilisateurs Amazon Cognito, consultez Liste des opérations d'API regroupées par modèle d'autorisation.

Opérations d’API des réserves d’identités Amazon Cognito
  • GetId

  • GetOpenIdToken

  • GetCredentialsForIdentity

  • UnlinkIdentity

Opérations d’API des groupes d’utilisateurs Amazon Cognito
  • AssociateSoftwareToken

  • ChangePassword

  • ConfirmDevice

  • ConfirmForgotPassword

  • ConfirmSignUp

  • DeleteUser

  • DeleteUserAttributes

  • ForgetDevice

  • ForgotPassword

  • GetDevice

  • GetUser

  • GetUserAttributeVerificationCode

  • GlobalSignOut

  • InitiateAuth

  • ListDevices

  • ResendConfirmationCode

  • RespondToAuthChallenge

  • RevokeToken

  • SetUserMFAPreference

  • SetUserSettings

  • SignUp

  • UpdateAuthEventFeedback

  • UpdateDeviceStatus

  • UpdateUserAttributes

  • VerifySoftwareToken

  • VerifyUserAttribute

Pour voir des exemples de politiques basées sur une identité pour Amazon Cognito, consultez Identity-based exemples de politiques pour Amazon Cognito.

Ressources de politique pour Amazon Cognito

Prend en charge les ressources de politique : oui

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. Il est recommandé de définir une ressource à l’aide de son Amazon Resource Name (ARN). Pour les actions qui ne sont pas compatibles avec les autorisations de niveau ressource, utilisez un caractère générique (*) afin d’indiquer que l’instruction s’applique à toutes les ressources.

"Resource": "*"

Amazon Resource Names (ARN)

ARN pour les identités fédérées Amazon Cognito

Dans les groupes d’identités (identités fédérées) Amazon Cognito, il est possible de limiter l’accès d’un utilisateur IAM à un groupe d’identités spécifiques, en utilisant le format Amazon Resource Name (ARN), comme dans l’exemple suivant. Pour plus d’informations sur les ARN, consultez Identifiants IAM.

arn:aws:cognito-identity:REGION:ACCOUNT_ID:identitypool/IDENTITY_POOL_ID

ARN pour Amazon Cognito Sync

Dans Amazon Cognito Sync, les clients peuvent également restreindre l’accès en fonction de l’ID de groupe d’identités, de l’ID d’identité et du nom de jeu de données.

Pour les API qui opèrent sur un groupe d’identités, le format d’ARN de groupe d’identités est le même que pour les identités fédérées Amazon Cognito, sauf que le nom du service est cognito-sync au lieu de cognito-identity :

arn:aws:cognito-sync:REGION:ACCOUNT_ID:identitypool/IDENTITY_POOL_ID

Pour les API qui fonctionnent au niveau d’une seule identité, par exemple, RegisterDevice, vous pouvez faire référence à l’identité individuelle avec le format d’ARN suivant :

arn:aws:cognito-sync:REGION:ACCOUNT_ID:identitypool/IDENTITY_POOL_ID/identity/IDENTITY_ID

Pour les API qui exploitent des ensembles de données (par exemple, UpdateRecords et ListRecords), vous pouvez faire référence à l’ensemble de données avec le format d’ARN suivant :

arn:aws:cognito-sync:REGION:ACCOUNT_ID:identitypool/IDENTITY_POOL_ID/identity/IDENTITY_ID/dataset/DATASET_NAME

ARN pour les groupes d’utilisateurs d’Amazon Cognito

Pour Amazon Cognito Your User Pools, il est possible de limiter l’accès d’un utilisateur à un groupe d’utilisateurs spécifique, en utilisant le format d’ARN suivant :

arn:aws:cognito-idp:REGION:ACCOUNT_ID:userpool/USER_POOL_ID

Pour afficher la liste des types de ressources Amazon Cognito, consultez Ressources définies par Amazon Cognito dans la Référence de l’autorisation de service. Pour savoir les actions avec lesquelles vous pouvez spécifier l’ARN de chaque ressource, consultez Actions définies par Amazon Cognito.

Pour voir des exemples de politiques basées sur une identité pour Amazon Cognito, consultez Identity-based exemples de politiques pour Amazon Cognito.

Clés de condition de politique pour Amazon Cognito

Prend en charge les clés de condition de politique spécifiques au service : oui

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 Condition indique à quel moment les instructions s’exécutent en fonction de critères définis. 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. Pour voir toutes les clés de condition AWS globales, voir les clés de contexte de condition AWS globales dans le guide de l'utilisateur IAM.

Pour afficher la liste des clés de condition Amazon Cognito, consultez Clés de condition pour Amazon Cognito dans la Référence de l’autorisation de service. Pour savoir les actions et ressources avec lesquelles vous pouvez utiliser une clé de condition, consultez Actions définies par Amazon Cognito.

Pour voir des exemples de politiques basées sur une identité pour Amazon Cognito, consultez Identity-based exemples de politiques pour Amazon Cognito.

Listes de contrôle d’accès (ACL) dans Amazon Cognito

Prend en charge les ACL : non

Les listes de contrôle d’accès (ACL) vérifie quels principaux (membres de compte, utilisateurs ou rôles) ont l’autorisation d’accéder à une ressource. Les listes de contrôle d’accès sont similaires aux politiques basées sur les ressources, bien qu’elles n’utilisent pas le format de document de politique JSON.

Attribute-based contrôle d'accès (ABAC) avec Amazon Cognito

Prend en charge ABAC (identifications dans les politiques) : partiellement

Attribute-based le contrôle d'accès (ABAC) est une stratégie d'autorisation qui définit les autorisations en fonction d'attributs appelés balises. Vous pouvez associer des balises aux entités et aux AWS ressources IAM, puis concevoir des politiques ABAC pour autoriser les opérations lorsque la balise du principal correspond à la balise de la ressource.

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 aws:ResourceTag/key-name, aws:RequestTag/key-name ou aws:TagKeys.

Si un service prend en charge les trois clés de condition pour tous les types de ressources, alors la valeur pour ce service est Oui. Si un service prend en charge les trois clés de condition pour certains types de ressources uniquement, la valeur est Partielle.

Pour plus d’informations sur ABAC, consultez Définition d’autorisations avec l’autorisation ABAC dans le Guide de l’utilisateur IAM. Pour accéder à un didacticiel décrivant les étapes de configuration de l’ABAC, consultez Utilisation du contrôle d’accès par attributs (ABAC) dans le Guide de l’utilisateur IAM.

Utilisation d’informations d’identification temporaires avec Amazon Cognito

Prend en charge les informations d’identification temporaires : oui

Les informations d'identification temporaires fournissent un accès à court terme aux AWS ressources et sont automatiquement créées lorsque vous utilisez la fédération ou que vous changez de rôle. AWS recommande de générer dynamiquement des informations d'identification temporaires au lieu d'utiliser des clés d'accès à long terme. Pour plus d’informations, consultez Informations d’identification de sécurité temporaires dans IAM et Services AWS compatibles avec IAM dans le Guide de l’utilisateur IAM.

Cross-service autorisations principales pour Amazon Cognito

Prend en charge les sessions d’accès direct (FAS) : oui

Les sessions d'accès direct (FAS) utilisent les autorisations du principal appelant et Service AWS, combinées Service AWS à la demande d'envoi de demandes aux services en aval. Pour plus de détails sur une politique lors de la formulation de demandes FAS, consultez Transmission des sessions d’accès.

Fonctions du service pour Amazon Cognito

Prend en charge les rôles de service : oui

Un rôle de service est un rôle IAM qu’un service endosse pour accomplir des actions en votre nom. Un administrateur IAM peut créer, modifier et supprimer un rôle de service à partir d’IAM. Pour plus d’informations, consultez Création d’un rôle pour la délégation d’autorisations à un Service AWS dans le Guide de l’utilisateur IAM.

Pour plus d’informations sur les fonctions du service Amazon Cognito, consultez Activation de la synchronisation push et Mise en œuvre de la synchronisation push.

Avertissement

La modification des autorisations d’une fonction du service peut altérer la fonctionnalité d’Amazon Cognito. Ne modifiez des fonctions du service que quand Amazon Cognito vous le conseille.

Service-linked rôles pour Amazon Cognito

Prend en charge les rôles liés à un service : oui

Un rôle lié à un service est un type de rôle de service lié à un. Service AWS Le service peut assumer le rôle d'effectuer une action en votre nom. Service-linked les rôles apparaissent dans votre fichier Compte AWS et appartiennent au service. Un administrateur IAM peut consulter, mais ne peut pas modifier, les autorisations concernant les rôles liés à un service.

Pour plus d’informations sur la création ou la gestion de rôles liés à un service dans Amazon Cognito, consultez Utilisation de rôles liés à un service pour Amazon Cognito.