Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Modèles d'autorisation pour l'authentification par API et SDK

Mode de mise au point
Modèles d'autorisation pour l'authentification par API et SDK - 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.

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.

Lorsque vous débutez avec l'authentification des groupes d'utilisateurs, vous devez choisir le modèle d'autorisation de votre application. L'authentification Amazon Cognito nécessite généralement que vous implémentiez deux opérations d'API dans l'ordre. Les opérations d'API que vous utilisez pour l'authentification dépendent des caractéristiques de votre application. Les clients publics, où l'application est distribuée aux utilisateurs, utilisent l'authentification publique, où les demandes de connexion ne nécessitent pas d'autorisation. Les clients côté serveur, où la logique de l'application est hébergée sur un système distant, peuvent protéger les opérations d'authentification avec l'autorisation IAM pour les demandes de connexion. Les paires d'opérations d'API suivantes et les méthodes du SDK correspondantes correspondent à chacun des modèles d'autorisation disponibles.

Pour comparer l'authentification des API et consulter la liste complète des opérations d'API et de leurs modèles d'autorisation, consultezComprendre l'API, l'OIDC et l'authentification par pages de connexion gérées.

Client-side (public) authentication

InitiateAuthet RespondToAuthChallenge ne sont pas authentifiés APIs pour être utilisés avec des clients d'applications publiques côté client. Pour plus d’informations, consultez Options d'authentification côté client et Comprendre l'API, l'OIDC et l'authentification par pages de connexion gérées.

Server-side authentication

AdminInitiateAuth et AdminRespondToAuthChallenge nécessitent des informations d'identification IAM et conviennent pour les clients d'application confidentielle côté serveur. Pour plus d’informations, consultez Options d'authentification côté serveur et Comprendre l'API, l'OIDC et l'authentification par pages de connexion gérées.

InitiateAuthet RespondToAuthChallenge ne sont pas authentifiés APIs pour être utilisés avec des clients d'applications publiques côté client. Pour plus d’informations, consultez Options d'authentification côté client et Comprendre l'API, l'OIDC et l'authentification par pages de connexion gérées.

Un utilisateur s'authentifie en répondant à des demandes de vérification successives jusqu'à ce que l'authentification échoue ou qu'Amazon Cognito émette des jetons pour l'utilisateur. Vous pouvez répéter ces étapes avec Amazon Cognito, dans un processus qui inclut différentes demandes de vérification, pour prendre en charge n'importe quel flux d'authentification personnalisé.

Options d'authentification côté serveur

Les applications Web et autres applications côté serveur implémentent l'authentification dans une session sur un serveur distant, généralement dans un navigateur qui initie une session sur ce serveur. Les applications côté serveur présentent généralement les caractéristiques suivantes.

  • Ils sont intégrés à une application installée sur un serveur dans des langages tels que Java, Ruby ou Node.js.

  • Ils se connectent à des clients d'applications de pool d'utilisateurs susceptibles de détenir un secret client, appelés clients confidentiels.

  • Ils ont accès aux AWS informations d'identification.

  • Ils invoquent la connexion gérée pour l'authentification ou utilisent des opérations autorisées par IAM dans l'API des groupes d'utilisateurs avec un AWS SDK.

  • Ils servent des clients internes et peuvent servir des clients publics.

Les opérations côté serveur avec l'API des groupes d'utilisateurs peuvent utiliser des mots de passe, des mots de passe à usage unique ou des clés d'accès comme principal facteur de connexion. Pour les applications côté serveur, l'authentification d'un groupe d'utilisateurs est similaire à celle des applications côté client, à l'exception des aspects suivants :

  • L'application côté serveur envoie une demande d'AdminInitiateAuthAPI. Cette opération nécessite des AWS informations d'identification avec des autorisations telles que cognito-idp:AdminInitiateAuth etcognito-idp:AdminRespondToAuthChallenge. L'opération renvoie le résultat du défi ou de l'authentification requis.

  • Lorsque l'application reçoit un défi, elle envoie une demande d'AdminRespondToAuthChallengeAPI. Le fonctionnement de AdminRespondToAuthChallenge l'API nécessite également des AWS informations d'identification.

Pour plus d'informations sur la signature des demandes d'API Amazon Cognito avec des AWS informations d'identification, consultez le processus de signature Signature version 4 dans le manuel de référence AWS général.

Dans la réponse AdminInitiateAuth ChallengeParameters, l'attribut USER_ID_FOR_SRP, s'il est présent, contient le nom d'utilisateur réel de l'utilisateur, et non pas un alias (tel qu'une adresse e-mail ou un numéro de téléphone). Dans votre appel à AdminRespondToAuthChallenge, dans le ChallengeResponses, vous devez transmettre ce nom d'utilisateur dans le paramètre USERNAME.

Note

Étant donné que les implémentations d'administration principale utilisent le flux d'authentification des administrateurs, celui-ci ne prend pas en charge les appareils mémorisés. Lorsque la fonctionnalité de suivi des dispositifs est activée, l'authentification d'administrateur réussit, mais tout appel visant à actualiser le jeton d'accès échoue.

Options d'authentification côté client

Les applications mobiles et les autres types d'applications côté client installés sur les appareils des utilisateurs présentent généralement les caractéristiques suivantes.

  • Ils sont conçus dans des langages tels que React Native, Flutter et Swift et sont déployés sur les appareils des utilisateurs.

  • Ils se connectent à des clients d'applications de pool d'utilisateurs qui n'ont pas de secret client, appelés clients publics.

  • Ils n'ont pas accès aux AWS informations d'identification qui autoriseraient les demandes d'API autorisées par IAM.

  • Ils invoquent la connexion gérée pour l'authentification, ou utilisent des opérations publiques et autorisées par des jetons dans l'API des groupes d'utilisateurs avec un AWS SDK.

  • Ils servent les clients publics et permettent à quiconque de s'inscrire et de se connecter.

Les opérations côté client avec l'API des groupes d'utilisateurs peuvent utiliser des mots de passe, des mots de passe à usage unique ou des clés d'accès comme principal facteur de connexion. Le processus suivant fonctionne pour les applications côté client utilisateur que vous créez avec AWS Amplifyou avec. AWS SDKs

  1. L'utilisateur entre le nom d'utilisateur et le mot de passe dans l'application.

  2. L'application appelle l'opération InitiateAuth avec le nom d'utilisateur et les informations SRP (Secure Remote Password) détaillées de l'utilisateur.

    Cette opération d'API renvoie les paramètres d'authentification.

    Note

    L'application génère les détails du SRP à l'aide des fonctionnalités SRP d'Amazon Cognito intégrées à. AWS SDKs

  3. L'appli appelle l'opération RespondToAuthChallenge. Si l'appel aboutit, Amazon Cognito retourne les jetons de l'utilisateur et le flux d'authentification est terminé.

    Si Amazon Cognito requiert une autre demande de vérification, l'appel à RespondToAuthChallenge ne renvoie aucun jeton. À la place, l'appel renvoie une session.

  4. Si RespondToAuthChallenge renvoie une session, l'appli appelle RespondToAuthChallenge à nouveau, cette fois avec la session et la réponse à la stimulation (par exemple, le code MFA).

Comprendre l'API, l'OIDC et l'authentification par pages de connexion gérées

Les groupes d'utilisateurs Amazon Cognito sont une combinaison de plusieurs technologies d'authentification. Ils s'appuient sur des fournisseurs d'identité externes (IdPs). Ils sont destinés IdPs aux applications qui implémentent l'authentification avec OpenID Connect (OIDC). SDKs Ils fournissent une authentification en tant qu'émetteurs de jetons Web JSON (JWTs) similaire à l'authentification OIDC, mais dans le cadre de méthodes d'API qui en font partie. AWS SDKs Ils peuvent également être des points d'entrée sécurisés pour vos applications.

Si vous voulez inscrire, connecter et gérer les utilisateurs de votre groupe d’utilisateurs, deux options s’offrent à vous.

  1. Vos pages de connexion gérées et l'interface utilisateur hébergée classique incluent les points de terminaison interactifs avec l'utilisateur de connexion gérée et les points de terminaison de fédération qui gèrent les rôles d'IdP et de partie utilisatrice. Ils constituent un ensemble de pages Web publiques qu’Amazon Cognito active lorsque vous choisissez un domaine pour votre groupe d’utilisateurs. Pour démarrer rapidement avec les fonctionnalités d'authentification et d'autorisation des groupes d'utilisateurs Amazon Cognito, notamment les pages d'inscription, de connexion, de gestion des mots de passe et d'authentification multifactorielle (MFA), utilisez l'interface utilisateur intégrée de la connexion gérée.

    Les autres points de terminaison du groupe d'utilisateurs facilitent l'authentification auprès de fournisseurs d'identité tiers (IdPs). Les services qu’ils fournissent incluent ce qui suit.

    1. Points de terminaison de rappel des fournisseurs de services pour les réclamations authentifiées provenant de vous, comme et. IdPs saml2/idpresponse oauth2/idpresponse Lorsqu’Amazon Cognito est un fournisseur de services intermédiaire (SP) entre votre application et votre fournisseur d’identité, les points de terminaison de rappel représentent le service.

    2. Des points de terminaison qui fournissent des informations sur votre environnement, comme oauth2/userInfo et/.well-known/jwks.json. Votre application utilise ces points de terminaison lorsqu'elle vérifie des jetons ou récupère des données de profil utilisateur dans les bibliothèques de développement OIDC ou OAuth 2.0.

  2. L'API des groupes d'utilisateurs Amazon Cognito est un ensemble d'outils permettant à votre application Web ou mobile d'authentifier les utilisateurs après avoir collecté les informations de connexion dans votre propre interface personnalisée. L’authentification par API des groupes d’utilisateurs produit les jetons Web JSON suivants.

    1. Un jeton d’identité avec des champs standard d’attribut vérifiables provenant de votre utilisateur.

    2. Un jeton d’accès qui autorise votre utilisateur à créer des demandes d’API autorisées par jeton sur un point de terminaison de service AWS.

      Note

      Par défaut, les jetons d’accès issus de l’authentification par API des groupes d’utilisateurs contiennent uniquement la portée aws.cognito.signin.user.admin. Pour générer un jeton d’accès avec des portées supplémentaires, par exemple pour autoriser une demande à une API tierce, demandez des portées pendant l’authentification via les points de terminaison de votre groupe d’utilisateurs ou ajoutez des portées personnalisées dans un Déclencheur Lambda avant génération de jeton. La personnalisation des jetons d'accès augmente les coûts de votre AWS facture.

    3. Un jeton d'actualisation qui autorise les demandes de nouveaux identifiants et jetons d'accès, et qui actualise l'identité des utilisateurs et les propriétés de contrôle d'accès.

Vous pouvez lier un utilisateur fédéré, qui se connecterait normalement via les points de terminaison des groupes d’utilisateurs, à un utilisateur dont le profil est local à votre groupe d’utilisateurs. Un utilisateur local existe exclusivement dans l’annuaire de votre groupe d’utilisateurs sans fédération via un fournisseur d’identité externe. Si vous liez leur identité fédérée à un utilisateur local dans une demande d'AdminLinkProviderForUserAPI, ils peuvent se connecter à l'aide de l'API des groupes d'utilisateurs. Pour de plus amples informations, veuillez consulter Liaison d'utilisateurs fédérés à un profil utilisateur existant.

L’API des groupes d’utilisateurs Amazon Cognito est à double usage.

  1. D’une part, elle permet de créer et de configurer les ressources de vos groupes d’utilisateurs Amazon Cognito. Par exemple, vous pouvez créer des groupes d'utilisateurs, ajouter des AWS Lambda déclencheurs et configurer le domaine du groupe d'utilisateurs qui héberge vos pages de connexion gérées.

  2. Il effectue l'inscription, la connexion et d'autres opérations utilisateur pour les utilisateurs locaux et liés.

Exemple de scénario avec l’API des groupes d’utilisateurs Amazon Cognito
  1. Votre utilisateur sélectionne un bouton « Create an account » (Créer un compte) que vous avez créé dans votre application. Il saisit une adresse e-mail et un mot de passe.

  2. Votre application envoie une demande d'SignUpAPI et crée un nouvel utilisateur dans votre groupe d'utilisateurs.

  3. Votre application demande à votre utilisateur un code de confirmation par e-mail. L’utilisateur saisit le code qu’il a reçu dans un e-mail.

  4. Votre application envoie une demande d'ConfirmSignUpAPI avec le code de confirmation de l'utilisateur.

  5. Votre application demande à votre utilisateur son nom d’utilisateur et son mot de passe et saisit ces informations.

  6. Votre application envoie une demande d'InitiateAuthAPI et stocke un jeton d'identification, un jeton d'accès et un jeton d'actualisation. Votre application appelle les bibliothèques OIDC pour gérer les jetons de l’utilisateur et faire persister la session de cet utilisateur.

Dans l’API des groupes d’utilisateurs Amazon Cognito, vous ne pouvez pas connecter les utilisateurs fédérés via un fournisseur d’identité. Vous devez authentifier ces utilisateurs via les points de terminaison de votre groupe d’utilisateurs. Pour plus d'informations sur les points de terminaison du groupe d'utilisateurs qui incluent la connexion gérée, consultezPoints de terminaison du groupe d'utilisateurs et référence de connexion gérée.

Vos utilisateurs fédérés peuvent commencer par une connexion gérée et sélectionner leur IdP, ou vous pouvez ignorer la connexion gérée et envoyer vos utilisateurs directement vers votre IdP pour qu'ils se connectent. Lorsque votre demande d’API à destination du Point de terminaison d’autorisation comporte un paramètre de fournisseur d’identité, Amazon Cognito redirige discrètement votre utilisateur vers la page de connexion du fournisseur d’identité.

Exemple de scénario avec des pages de connexion gérées
  1. Votre utilisateur sélectionne un bouton « Create an account » (Créer un compte) que vous avez créé dans votre application.

  2. La connexion gérée présente à votre utilisateur une liste des fournisseurs d'identité sociale pour lesquels vous avez enregistré des informations d'identification de développeur. Votre utilisateur choisit Apple.

  3. Votre application adresse une demande au Point de terminaison d’autorisation avec le nom de fournisseur SignInWithApple.

  4. Le navigateur de votre utilisateur ouvre la page d'authentification Apple. Votre utilisateur se connecte et choisit d'autoriser Amazon Cognito à lire les informations de son profil.

  5. Amazon Cognito confirme le jeton d’accès Apple et interroge le profil Apple de votre utilisateur.

  6. Votre utilisateur présente un code d’autorisation Amazon Cognito à votre application.

  7. La bibliothèque OIDC de votre application échange le code d'autorisation avec le Point de terminaison de jeton et stocke un jeton d'identification, un jeton d'accès et un jeton d'actualisation émis par le groupe d'utilisateurs. Votre application utilise les bibliothèques OIDC pour gérer les jetons de votre utilisateur et maintenir une session permanente pour cet utilisateur.

L'API des groupes d'utilisateurs et les pages de connexion gérées prennent en charge divers scénarios, décrits dans ce guide. Les sections suivantes examinent la façon dont l’API des groupes d’utilisateurs se divise en différentes classes qui répondent à vos exigences en matière d’inscription, de connexion et de gestion des ressources.

Opérations d’API authentifiées et non authentifiées des groupes d’utilisateurs Amazon Cognito

L’API des groupes d’utilisateurs Amazon Cognito, qui est à la fois une interface de gestion des ressources et une interface d’authentification et d’autorisation destinée à l’utilisateur, combine les modèles d’autorisation suivants dans ses opérations. En fonction de l’opération de l’API, vous serez peut-être amené à fournir une autorisation avec des informations d’identification IAM, un jeton d’accès, un jeton de session, un secret client ou une combinaison de ces éléments. Pour bon nombre d’opérations d’authentification et d’autorisation des utilisateurs, vous avez le choix entre différentes versions authentifiées et non authentifiées de la demande. Les opérations non authentifiées constituent une bonne pratique de sécurité pour les applications que vous distribuez à vos utilisateurs, comme les applications mobiles, car vous n’avez pas besoin d’inclure de secrets dans votre code.

Vous ne pouvez attribuer des autorisations de politiques IAM que pour les Opérations de gestion authentifiées par IAM et les Opérations utilisateur authentifiées par IAM.

Les opérations de gestion authentifiées par IAM permettent de modifier et d’afficher la configuration de votre groupe d’utilisateurs et de votre client d’application, comme vous le feriez dans la AWS Management Console.

Par exemple, pour modifier votre groupe d'utilisateurs dans une demande d'UpdateUserPoolAPI, vous devez présenter des AWS informations d'identification et des autorisations IAM pour mettre à jour la ressource.

Pour autoriser ces demandes dans le AWS Command Line Interface (AWS CLI) ou dans un AWS SDK, configurez votre environnement avec des variables d'environnement ou une configuration client qui ajoute des informations d'identification IAM à votre demande. Pour plus d'informations, consultez la section Accès à AWS l'aide de vos AWS informations d'identification dans le Références générales AWS. Vous pouvez également envoyer des demandes directement aux points de terminaison de service pour l’API des groupes d’utilisateurs Amazon Cognito. Vous devez autoriser ou signer ces demandes avec des AWS informations d'identification que vous intégrez dans l'en-tête de votre demande. Pour plus d'informations, consultez la section Signature des demandes AWS d'API.

Opérations de gestion authentifiées par IAM
AddCustomAttributes
CreateGroup
CreateIdentityProvider
CreateResourceServer
CreateUserImportJob
CreateUserPool
CreateUserPoolClient
CreateUserPoolDomain
DeleteGroup
DeleteIdentityProvider
DeleteResourceServer
DeleteUserPool
DeleteUserPoolClient
DeleteUserPoolDomain
DescribeIdentityProvider
DescribeResourceServer
DescribeRiskConfiguration
DescribeUserImportJob
DescribeUserPool
DescribeUserPoolClient
DescribeUserPoolDomain
GetCSVHeader
GetGroup
GetIdentityProviderByIdentifier
GetSigningCertificate
GetUICustomization
GetUserPoolMfaConfig
ListGroups
ListIdentityProviders
ListResourceServers
ListTagsForResource
ListUserImportJobs
ListUserPoolClients
ListUserPools
ListUsers
ListUsersInGroup
SetRiskConfiguration
SetUICustomization
SetUserPoolMfaConfig
StartUserImportJob
StopUserImportJob
TagResource
UntagResource
UpdateGroup
UpdateIdentityProvider
UpdateResourceServer
UpdateUserPool
UpdateUserPoolClient
UpdateUserPoolDomain

Opérations de gestion authentifiées par IAM

Les opérations de gestion authentifiées par IAM permettent de modifier et d’afficher la configuration de votre groupe d’utilisateurs et de votre client d’application, comme vous le feriez dans la AWS Management Console.

Par exemple, pour modifier votre groupe d'utilisateurs dans une demande d'UpdateUserPoolAPI, vous devez présenter des AWS informations d'identification et des autorisations IAM pour mettre à jour la ressource.

Pour autoriser ces demandes dans le AWS Command Line Interface (AWS CLI) ou dans un AWS SDK, configurez votre environnement avec des variables d'environnement ou une configuration client qui ajoute des informations d'identification IAM à votre demande. Pour plus d'informations, consultez la section Accès à AWS l'aide de vos AWS informations d'identification dans le Références générales AWS. Vous pouvez également envoyer des demandes directement aux points de terminaison de service pour l’API des groupes d’utilisateurs Amazon Cognito. Vous devez autoriser ou signer ces demandes avec des AWS informations d'identification que vous intégrez dans l'en-tête de votre demande. Pour plus d'informations, consultez la section Signature des demandes AWS d'API.

Opérations de gestion authentifiées par IAM
AddCustomAttributes
CreateGroup
CreateIdentityProvider
CreateResourceServer
CreateUserImportJob
CreateUserPool
CreateUserPoolClient
CreateUserPoolDomain
DeleteGroup
DeleteIdentityProvider
DeleteResourceServer
DeleteUserPool
DeleteUserPoolClient
DeleteUserPoolDomain
DescribeIdentityProvider
DescribeResourceServer
DescribeRiskConfiguration
DescribeUserImportJob
DescribeUserPool
DescribeUserPoolClient
DescribeUserPoolDomain
GetCSVHeader
GetGroup
GetIdentityProviderByIdentifier
GetSigningCertificate
GetUICustomization
GetUserPoolMfaConfig
ListGroups
ListIdentityProviders
ListResourceServers
ListTagsForResource
ListUserImportJobs
ListUserPoolClients
ListUserPools
ListUsers
ListUsersInGroup
SetRiskConfiguration
SetUICustomization
SetUserPoolMfaConfig
StartUserImportJob
StopUserImportJob
TagResource
UntagResource
UpdateGroup
UpdateIdentityProvider
UpdateResourceServer
UpdateUserPool
UpdateUserPoolClient
UpdateUserPoolDomain

Les opérations utilisateur authentifiées par IAM permettent d’inscrire, connecter, modifier et afficher vos utilisateurs, ainsi que de gérer leurs informations d’identifications.

Par exemple, vous pouvez avoir un niveau d’application côté serveur qui repose sur un front-end web. Votre application côté serveur est un client OAuth confidentiel en qui vous avez confiance et qui dispose d'un accès privilégié à vos ressources Amazon Cognito. Pour enregistrer un utilisateur dans l'application, votre serveur peut inclure des AWS informations d'identification dans une demande d'AdminCreateUserAPI. Pour plus d'informations sur les types de OAuth clients, consultez la section Types de clients dans le cadre d'autorisation OAuth 2.0.

Pour autoriser ces demandes dans le SDK AWS CLI ou dans un AWS SDK, configurez votre environnement d'applications côté serveur avec des variables d'environnement ou une configuration client qui ajoute des informations d'identification IAM à votre demande. Pour plus d'informations, consultez la section Accès à AWS l'aide de vos AWS informations d'identification dans le Références générales AWS. Vous pouvez également envoyer des demandes directement aux points de terminaison de service pour l’API des groupes d’utilisateurs Amazon Cognito. Vous devez autoriser ou signer ces demandes avec des AWS informations d'identification que vous intégrez dans l'en-tête de votre demande. Pour plus d'informations, consultez la section Signature des demandes AWS d'API.

Si votre client d’application dispose d’un secret client, vous devez fournir à la fois vos informations d’identification IAM et, selon l’opération, le paramètre SecretHash ou la valeur SECRET_HASH dans AuthParameters. Pour de plus amples informations, veuillez consulter Calcul des valeurs de hachage secret.

Opérations utilisateur authentifiées par IAM
AdminAddUserToGroup
AdminConfirmSignUp
AdminCreateUser
AdminDeleteUser
AdminDeleteUserAttributes
AdminDisableProviderForUser
AdminDisableUser
AdminEnableUser
AdminForgetDevice
AdminGetDevice
AdminGetUser
AdminInitiateAuth
AdminLinkProviderForUser
AdminListDevices
AdminListGroupsForUser
AdminListUserAuthEvents
AdminRemoveUserFromGroup
AdminResetUserPassword
AdminRespondToAuthChallenge
AdminSetUserMFAPreference
AdminSetUserPassword
AdminSetUserSettings
AdminUpdateAuthEventFeedback
AdminUpdateDeviceStatus
AdminUpdateUserAttributes
AdminUserGlobalSignOut

Opérations utilisateur authentifiées par IAM

Les opérations utilisateur authentifiées par IAM permettent d’inscrire, connecter, modifier et afficher vos utilisateurs, ainsi que de gérer leurs informations d’identifications.

Par exemple, vous pouvez avoir un niveau d’application côté serveur qui repose sur un front-end web. Votre application côté serveur est un client OAuth confidentiel en qui vous avez confiance et qui dispose d'un accès privilégié à vos ressources Amazon Cognito. Pour enregistrer un utilisateur dans l'application, votre serveur peut inclure des AWS informations d'identification dans une demande d'AdminCreateUserAPI. Pour plus d'informations sur les types de OAuth clients, consultez la section Types de clients dans le cadre d'autorisation OAuth 2.0.

Pour autoriser ces demandes dans le SDK AWS CLI ou dans un AWS SDK, configurez votre environnement d'applications côté serveur avec des variables d'environnement ou une configuration client qui ajoute des informations d'identification IAM à votre demande. Pour plus d'informations, consultez la section Accès à AWS l'aide de vos AWS informations d'identification dans le Références générales AWS. Vous pouvez également envoyer des demandes directement aux points de terminaison de service pour l’API des groupes d’utilisateurs Amazon Cognito. Vous devez autoriser ou signer ces demandes avec des AWS informations d'identification que vous intégrez dans l'en-tête de votre demande. Pour plus d'informations, consultez la section Signature des demandes AWS d'API.

Si votre client d’application dispose d’un secret client, vous devez fournir à la fois vos informations d’identification IAM et, selon l’opération, le paramètre SecretHash ou la valeur SECRET_HASH dans AuthParameters. Pour de plus amples informations, veuillez consulter Calcul des valeurs de hachage secret.

Opérations utilisateur authentifiées par IAM
AdminAddUserToGroup
AdminConfirmSignUp
AdminCreateUser
AdminDeleteUser
AdminDeleteUserAttributes
AdminDisableProviderForUser
AdminDisableUser
AdminEnableUser
AdminForgetDevice
AdminGetDevice
AdminGetUser
AdminInitiateAuth
AdminLinkProviderForUser
AdminListDevices
AdminListGroupsForUser
AdminListUserAuthEvents
AdminRemoveUserFromGroup
AdminResetUserPassword
AdminRespondToAuthChallenge
AdminSetUserMFAPreference
AdminSetUserPassword
AdminSetUserSettings
AdminUpdateAuthEventFeedback
AdminUpdateDeviceStatus
AdminUpdateUserAttributes
AdminUserGlobalSignOut

Les opérations utilisateur non authentifiées permettent d’inscrire, de connecter les utilisateurs et de leur lancer le processus de réinitialisation de mot de passe. Les opérations d’API non authentifiées, c’est-à-dire publiques, s’avèrent utiles lorsque vous voulez permettre à quiconque sur Internet de s’inscrire et de se connecter à votre application.

Par exemple, pour enregistrer un utilisateur dans votre application, vous pouvez distribuer un client OAuth public qui ne fournit aucun accès privilégié aux secrets. Vous pouvez enregistrer cet utilisateur à l'aide de l'opération d'API non authentifiée. SignUp

Pour envoyer ces demandes dans un client public que vous avez développé avec un AWS SDK, vous n'avez pas besoin de configurer d'informations d'identification. Vous pouvez également envoyer des demandes directement aux points de terminaison de service pour l’API des groupes d’utilisateurs Amazon Cognito sans aucune autorisation supplémentaire.

Si votre client d’application dispose d’un secret client, selon l’opération, vous devez fournir le paramètre SecretHash ou la valeur SECRET_HASH dans AuthParameters. Pour de plus amples informations, veuillez consulter Calcul des valeurs de hachage secret.

Opérations utilisateur non authentifiées
SignUp
ConfirmSignUp
ResendConfirmationCode
ForgotPassword
ConfirmForgotPassword
InitiateAuth

Opérations utilisateur non authentifiées

Les opérations utilisateur non authentifiées permettent d’inscrire, de connecter les utilisateurs et de leur lancer le processus de réinitialisation de mot de passe. Les opérations d’API non authentifiées, c’est-à-dire publiques, s’avèrent utiles lorsque vous voulez permettre à quiconque sur Internet de s’inscrire et de se connecter à votre application.

Par exemple, pour enregistrer un utilisateur dans votre application, vous pouvez distribuer un client OAuth public qui ne fournit aucun accès privilégié aux secrets. Vous pouvez enregistrer cet utilisateur à l'aide de l'opération d'API non authentifiée. SignUp

Pour envoyer ces demandes dans un client public que vous avez développé avec un AWS SDK, vous n'avez pas besoin de configurer d'informations d'identification. Vous pouvez également envoyer des demandes directement aux points de terminaison de service pour l’API des groupes d’utilisateurs Amazon Cognito sans aucune autorisation supplémentaire.

Si votre client d’application dispose d’un secret client, selon l’opération, vous devez fournir le paramètre SecretHash ou la valeur SECRET_HASH dans AuthParameters. Pour de plus amples informations, veuillez consulter Calcul des valeurs de hachage secret.

Opérations utilisateur non authentifiées
SignUp
ConfirmSignUp
ResendConfirmationCode
ForgotPassword
ConfirmForgotPassword
InitiateAuth

Les opérations utilisateur authentifiées par jeton permettent de déconnecter les utilisateurs et de gérer leurs informations d’identification. Elles permettent également de modifier et d’afficher les utilisateurs après qu’ils se soient connectés ou qu’ils aient entamé le processus de connexion. Les opérations d’API authentifiées par jeton s’avèrent utiles lorsque vous ne voulez pas distribuer de secrets dans votre application et que vous souhaitez autoriser les demandes avec les informations d’identification propres à vos utilisateurs. Si votre utilisateur a mené à bien le processus de connexion, vous devez autoriser sa demande d’API authentifiée par jeton avec un jeton d’accès. Si votre utilisateur se trouve au milieu d’un processus de connexion, vous devez autoriser sa demande d’API authentifiée par jeton avec le jeton de session qu’a renvoyé Amazon Cognito en réponse à la demande précédente.

Par exemple, dans un client public, vous pouvez souhaiter mettre à jour le profil d’un utilisateur de façon à limiter l’accès en écriture uniquement à son profil. Pour effectuer cette mise à jour, votre client peut inclure le jeton d'accès de l'utilisateur dans une demande d'UpdateUserAttributesAPI.

Pour envoyer ces demandes dans un client public que vous avez développé avec un AWS SDK, vous n'avez pas besoin de configurer d'informations d'identification. Incluez un paramètre AccessToken ou Session dans votre demande. Vous pouvez également envoyer des demandes directement aux points de terminaison de service pour l’API des groupes d’utilisateurs Amazon Cognito. Pour autoriser une demande à destination d’un point de terminaison de service, incluez le jeton d’accès ou de session dans le corps POST de votre demande.

Pour signer une demande d’API pour une opération authentifiée par jeton, incluez le jeton d’accès en tant qu’en-tête Authorization dans votre demande, au format Bearer <Base64-encoded access token>.

Opérations des utilisateurs autorisés par jeton AccessToken Session
RespondToAuthChallenge
ChangePassword
GetUser
UpdateUserAttributes
DeleteUserAttributes
DeleteUser
ConfirmDevice
ForgetDevice
GetDevice
ListDevices
UpdateDeviceStatus
GetUserAttributeVerificationCode
VerifyUserAttribute
SetUserSettings
SetUserMFAPreference
GlobalSignOut
AssociateSoftwareToken
UpdateAuthEventFeedback
VerifySoftwareToken
RevokeToken¹

¹ RevokeToken prend un jeton d'actualisation comme paramètre. Le jeton d’actualisation sert de jeton d’autorisation et de ressource cible.

Opérations des utilisateurs autorisés par jeton

Les opérations utilisateur authentifiées par jeton permettent de déconnecter les utilisateurs et de gérer leurs informations d’identification. Elles permettent également de modifier et d’afficher les utilisateurs après qu’ils se soient connectés ou qu’ils aient entamé le processus de connexion. Les opérations d’API authentifiées par jeton s’avèrent utiles lorsque vous ne voulez pas distribuer de secrets dans votre application et que vous souhaitez autoriser les demandes avec les informations d’identification propres à vos utilisateurs. Si votre utilisateur a mené à bien le processus de connexion, vous devez autoriser sa demande d’API authentifiée par jeton avec un jeton d’accès. Si votre utilisateur se trouve au milieu d’un processus de connexion, vous devez autoriser sa demande d’API authentifiée par jeton avec le jeton de session qu’a renvoyé Amazon Cognito en réponse à la demande précédente.

Par exemple, dans un client public, vous pouvez souhaiter mettre à jour le profil d’un utilisateur de façon à limiter l’accès en écriture uniquement à son profil. Pour effectuer cette mise à jour, votre client peut inclure le jeton d'accès de l'utilisateur dans une demande d'UpdateUserAttributesAPI.

Pour envoyer ces demandes dans un client public que vous avez développé avec un AWS SDK, vous n'avez pas besoin de configurer d'informations d'identification. Incluez un paramètre AccessToken ou Session dans votre demande. Vous pouvez également envoyer des demandes directement aux points de terminaison de service pour l’API des groupes d’utilisateurs Amazon Cognito. Pour autoriser une demande à destination d’un point de terminaison de service, incluez le jeton d’accès ou de session dans le corps POST de votre demande.

Pour signer une demande d’API pour une opération authentifiée par jeton, incluez le jeton d’accès en tant qu’en-tête Authorization dans votre demande, au format Bearer <Base64-encoded access token>.

Opérations des utilisateurs autorisés par jeton AccessToken Session
RespondToAuthChallenge
ChangePassword
GetUser
UpdateUserAttributes
DeleteUserAttributes
DeleteUser
ConfirmDevice
ForgetDevice
GetDevice
ListDevices
UpdateDeviceStatus
GetUserAttributeVerificationCode
VerifyUserAttribute
SetUserSettings
SetUserMFAPreference
GlobalSignOut
AssociateSoftwareToken
UpdateAuthEventFeedback
VerifySoftwareToken
RevokeToken¹

¹ RevokeToken prend un jeton d'actualisation comme paramètre. Le jeton d’actualisation sert de jeton d’autorisation et de ressource cible.

Rubrique suivante :

Ressources d'application

Rubrique précédente :

Flux d’authentification
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.