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.
Configuration de Google en tant qu'IdP de pool d'identités
Les pools d'identités Amazon Cognito fonctionnent avec Google pour fournir une authentification fédérée aux utilisateurs de vos applications mobiles. Cette section explique comment enregistrer et configurer votre application avec Google comme fournisseur d'identité.
Android
Note
Si votre application utilise Google et qu'elle est disponible sur plusieurs plateformes mobiles, vous devez configurer Google en tant que fournisseur OpenID Connect. Ajoutez tous les clients créés IDs en tant que valeurs d'audience supplémentaires pour une meilleure intégration. Pour en savoir plus sur le modèle d'identité à plusieurs clients de Google, consultez cette page
Configuration de Google
Pour activer la connexion Google pour Android, créez un projet de console Google Developers pour votre application.
-
Accédez à la console Google Developers
et créez un projet. -
Choisissez APIs& Services, puis écran de OAuth consentement. Personnalisez les informations que Google montre à vos utilisateurs quand il leur demande de consentir à partager leurs données de profil avec votre application.
-
Choisissez Identifiants, puis Créer des identifiants. Choisissez l'identifiant OAuth du client. Sélectionnez Android comme Type d'application. Créez un ID client distinct pour chaque plateforme où vous développez votre application.
-
Dans Identifiants, choisissez Gérer les comptes de service. Choisissez Créer un compte de service. Saisissez les détails de votre compte de service, puis choisissez Créer et continuer.
-
Accordez au compte de service l'accès à votre projet. Accordez aux utilisateurs l'accès au compte de service selon les besoins de votre application.
-
Choisissez votre nouveau compte de service, choisissez l'onglet Clés et Ajouter une clé. Créez et téléchargez une nouvelle JSON clé.
Pour plus d'informations sur l'utilisation de la console Google Developers, consultezCréer et gérer des projets
Pour plus d'informations sur la façon d'intégrer Google à votre application Android, consultez Authentifier les utilisateurs avec Sign in with Google
Pour ajouter un fournisseur d'identité (IdP) Google
-
Choisissez Groupes d'identités dans la console Amazon Cognito
. Sélectionnez une réserve d'identités. -
Choisissez l'onglet Accès utilisateur.
-
Sélectionnez Ajouter un fournisseur d'identité.
-
Choisissez Google.
-
Entrez l'ID client du OAuth projet que vous avez créé sur Google Cloud Platform
. Pour plus d'informations, consultez la section Configuration de la OAuth version 2.0 dans l'aide de la console Google Cloud Platform. -
Pour définir le rôle demandé par Amazon Cognito lorsqu'il délivre des informations d'identification aux utilisateurs qui se sont authentifiés auprès de ce fournisseur, configurez Paramètres de rôle.
-
Vous pouvez attribuer aux utilisateurs de ce fournisseur d'identité le rôle par défaut que vous avez configuré lorsque vous avez configuré votre rôle authentifié, ou vous pouvez sélectionner Choisir un rôle avec des règles.
-
Si vous avez choisi Choisir un rôle avec des règles, saisissez la demande source issue de l'authentification de votre utilisateur, l'opérateur avec lequel vous souhaitez comparer ce champ standard, la valeur qui entraînera une correspondance avec ce choix de rôle et le rôle que vous souhaitez attribuer si l'attribution de rôle correspond. Sélectionnez Ajouter un autre pour créer une règle supplémentaire basée sur une condition différente.
-
Choisissez une résolution de rôle. Lorsque les champs standard de votre utilisateur ne correspondent pas à vos règles, vous pouvez refuser les informations d'identification ou émettre des informations d'identification pour votre rôle authentifié.
-
-
-
Pour modifier les balises de principal qu'Amazon Cognito attribue lorsqu'il délivre des informations d'identification aux utilisateurs qui se sont authentifiés auprès de ce fournisseur, configurez Attributs de contrôle d'accès.
-
Pour n'appliquer aucune balise de principal, choisissez Inactif.
-
Pour appliquer les balises de principal en fonction des champs standard
sub
etaud
, choisissez Utiliser les mappages par défaut. -
Pour créer votre propre schéma personnalisé d'attributs pour les balises de principal, choisissez Utiliser des mappages personnalisés. Saisissez ensuite une clé de balise que vous souhaitez obtenir à partir de chaque demande que vous souhaitez représenter dans une balise.
-
-
Sélectionnez Enregistrer les modifications.
Utilisation de Google
Pour activer la connexion avec Google dans votre application, suivez les instructions fournies dans la documentation Google pour Android
L'exemple de code suivant illustre comment récupérer le jeton d'authentification auprès du service Google Play :
GooglePlayServicesUtil.isGooglePlayServicesAvailable(getApplicationContext()); AccountManager am = AccountManager.get(this); Account[] accounts = am.getAccountsByType(GoogleAuthUtil.GOOGLE_ACCOUNT_TYPE); String token = GoogleAuthUtil.getToken(getApplicationContext(), accounts[0].name, "audience:server:client_id:YOUR_GOOGLE_CLIENT_ID"); Map<String, String> logins = new HashMap<String, String>(); logins.put("accounts.google.com", token); credentialsProvider.setLogins(logins);
iOS : Objective-C
Note
Si votre application utilise Google et qu'elle est disponible sur plusieurs plateformes mobiles, configurez Google en tant que fournisseur OpenID Connect. Ajoutez tous les clients créés IDs en tant que valeurs d'audience supplémentaires pour une meilleure intégration. Pour en savoir plus sur le modèle d'identité à plusieurs clients de Google, consultez cette page
Configuration de Google
Pour activer la connexion Google pour iOS, créez un projet de console Google Developers pour votre application.
-
Accédez à la console Google Developers
et créez un projet. -
Choisissez APIs& Services, puis écran de OAuth consentement. Personnalisez les informations que Google montre à vos utilisateurs quand il leur demande de consentir à partager leurs données de profil avec votre application.
-
Choisissez Identifiants, puis Créer des identifiants. Choisissez l'identifiant OAuth du client. Sélectionnez iOS comme Type d'application. Créez un ID client distinct pour chaque plateforme où vous développez votre application.
-
Dans Identifiants, choisissez Gérer les comptes de service. Choisissez Créer un compte de service. Saisissez les détails de votre compte de service, puis choisissez Créer et continuer.
-
Accordez au compte de service l'accès à votre projet. Accordez aux utilisateurs l'accès au compte de service selon les besoins de votre application.
-
Choisissez votre nouveau compte de service. Choisissez l'onglet Clés et Ajouter une clé. Créez et téléchargez une nouvelle JSON clé.
Pour plus d'informations sur l'utilisation de la console Google Developers, consultezCréer et gérer des projets
Pour plus d'informations sur l'intégration de Google dans votre application iOS, consultez Google Sign-In for iOS
Pour ajouter un fournisseur d'identité (IdP) Google
-
Choisissez Groupes d'identités dans la console Amazon Cognito
. Sélectionnez une réserve d'identités. -
Choisissez l'onglet Accès utilisateur.
-
Sélectionnez Ajouter un fournisseur d'identité.
-
Choisissez Google.
-
Entrez l'ID client du OAuth projet que vous avez créé sur Google Cloud Platform
. Pour plus d'informations, consultez la section Configuration de la OAuth version 2.0 dans l'aide de la console Google Cloud Platform. -
Pour définir le rôle demandé par Amazon Cognito lorsqu'il délivre des informations d'identification aux utilisateurs qui se sont authentifiés auprès de ce fournisseur, configurez Paramètres de rôle.
-
Vous pouvez attribuer aux utilisateurs de ce fournisseur d'identité le rôle par défaut que vous avez configuré lorsque vous avez configuré votre rôle authentifié, ou vous pouvez sélectionner Choisir un rôle avec des règles.
-
Si vous avez choisi Choisir un rôle avec des règles, saisissez la demande source issue de l'authentification de votre utilisateur, l'opérateur avec lequel vous souhaitez comparer ce champ standard, la valeur qui entraînera une correspondance avec ce choix de rôle et le rôle que vous souhaitez attribuer si l'attribution de rôle correspond. Sélectionnez Ajouter un autre pour créer une règle supplémentaire basée sur une condition différente.
-
Choisissez une résolution de rôle. Lorsque les champs standard de votre utilisateur ne correspondent pas à vos règles, vous pouvez refuser les informations d'identification ou émettre des informations d'identification pour votre rôle authentifié.
-
-
-
Pour modifier les balises de principal qu'Amazon Cognito attribue lorsqu'il délivre des informations d'identification aux utilisateurs qui se sont authentifiés auprès de ce fournisseur, configurez Attributs de contrôle d'accès.
-
Pour n'appliquer aucune balise de principal, choisissez Inactif.
-
Pour appliquer les balises de principal en fonction des champs standard
sub
etaud
, choisissez Utiliser les mappages par défaut. -
Pour créer votre propre schéma personnalisé d'attributs pour les balises de principal, choisissez Utiliser des mappages personnalisés. Saisissez ensuite une clé de balise que vous souhaitez obtenir à partir de chaque demande que vous souhaitez représenter dans une balise.
-
-
Sélectionnez Enregistrer les modifications.
Utilisation de Google
Pour activer la connexion avec Google dans votre application, reportez-vous à la documentation Google pour iOS
Une authentification réussie produit un objet GTMOAuth2Authentication
contenant un id_token
qu'Amazon Cognito utilise pour authentifier l'utilisateur et générer un identifiant unique :
- (void)finishedWithAuth: (GTMOAuth2Authentication *)auth error: (NSError *) error { NSString *idToken = [auth.parameters objectForKey:@"id_token"]; credentialsProvider.logins = @{ @(AWSCognitoLoginProviderKeyGoogle): idToken }; }
iOS : Swift
Note
Si votre application utilise Google et qu'elle est disponible sur plusieurs plateformes mobiles, configurez Google en tant que fournisseur OpenID Connect. Ajoutez tous les clients créés IDs en tant que valeurs d'audience supplémentaires pour une meilleure intégration. Pour en savoir plus sur le modèle d'identité à plusieurs clients de Google, consultez cette page
Configuration de Google
Pour activer la connexion Google pour iOS, créez un projet de console Google Developers pour votre application.
-
Accédez à la console Google Developers
et créez un projet. -
Choisissez APIs& Services, puis écran de OAuth consentement. Personnalisez les informations que Google montre à vos utilisateurs quand il leur demande de consentir à partager leurs données de profil avec votre application.
-
Choisissez Identifiants, puis Créer des identifiants. Choisissez l'identifiant OAuth du client. Sélectionnez iOS comme Type d'application. Créez un ID client distinct pour chaque plateforme où vous développez votre application.
-
Dans Identifiants, choisissez Gérer les comptes de service. Choisissez Créer un compte de service. Saisissez les détails de votre compte de service, puis choisissez Créer et continuer.
-
Accordez au compte de service l'accès à votre projet. Accordez aux utilisateurs l'accès au compte de service selon les besoins de votre application.
-
Choisissez votre nouveau compte de service, choisissez l'onglet Clés et Ajouter une clé. Créez et téléchargez une nouvelle JSON clé.
Pour plus d'informations sur l'utilisation de la console Google Developers, consultezCréer et gérer des projets
Pour plus d'informations sur l'intégration de Google dans votre application iOS, consultez Google Sign-In for iOS
Choisissez Manage Identity Pools (Gérer les groupes d'identité) dans la page d'accueil de la console Amazon Cognito
Configuration du fournisseur externe dans la console Amazon Cognito
-
Choisissez le nom du groupe d'identités dans lequel vous souhaitez activer Google comme fournisseur externe. La page Dashboard (Tableau de bord) correspondant à votre groupe d'identités s'affiche.
-
Dans l'angle supérieur droit de la page Dashboard (Tableau de bord), choisissez Edit identity pool (Modifier le groupe d'identités). La page Edit identity pool (Modifier le groupe d'identités) s'affiche.
-
Faites défiler l'affichage vers le bas et choisissez Authentication providers (Fournisseurs d'authentification) pour développer cette option.
-
Choisissez l'onglet Google.
-
Sélectionnez Unlock (Déverrouiller).
-
Saisissez l'ID client Google que vous avez obtenu auprès de Google, puis choisissez Save Changes (Enregistrer les modifications).
Utilisation de Google
Pour activer la connexion avec Google dans votre application, reportez-vous à la documentation Google pour iOS
Une authentification réussie produit un objet GTMOAuth2Authentication
qui contient un jeton id_token
. Amazon Cognito utilise ce jeton pour authentifier l'utilisateur et générer un identifiant unique :
func finishedWithAuth(auth: GTMOAuth2Authentication!, error: NSError!) { if error != nil { print(error.localizedDescription) } else { let idToken = auth.parameters.objectForKey("id_token") credentialsProvider.logins = [AWSCognitoLoginProviderKey.Google.rawValue: idToken!] } }
JavaScript
Note
Si votre application utilise Google et qu'elle est disponible sur plusieurs plateformes mobiles, vous devez configurer Google en tant que fournisseur OpenID Connect. Ajoutez tous les clients créés IDs en tant que valeurs d'audience supplémentaires pour une meilleure intégration. Pour en savoir plus sur le modèle d'identité à plusieurs clients de Google, consultez cette page
Configuration de Google
Pour activer Google Sign-in pour une application JavaScript Web, créez un projet de console Google Developers pour votre application.
-
Accédez à la console Google Developers
et créez un projet. -
Choisissez APIs& Services, puis écran de OAuth consentement. Personnalisez les informations que Google montre à vos utilisateurs quand il leur demande de consentir à partager leurs données de profil avec votre application.
-
Choisissez Identifiants, puis Créer des identifiants. Choisissez l'identifiant OAuth du client. Sélectionnez Application web comme Type d'application. Créez un ID client distinct pour chaque plateforme où vous développez votre application.
-
Dans Identifiants, choisissez Gérer les comptes de service. Choisissez Créer un compte de service. Saisissez les détails de votre compte de service, puis choisissez Créer et continuer.
-
Accordez au compte de service l'accès à votre projet. Accordez aux utilisateurs l'accès au compte de service selon les besoins de votre application.
-
Choisissez votre nouveau compte de service, choisissez l'onglet Clés et Ajouter une clé. Créez et téléchargez une nouvelle JSON clé.
Pour plus d'informations sur l'utilisation de la console Google Developers, consultezCréer et gérer des projets
Pour plus d'informations sur l'intégration de Google dans votre application web, consultez Se connecter avec Google
Configuration du fournisseur externe dans la console Amazon Cognito
Pour ajouter un fournisseur d'identité (IdP) Google
-
Choisissez Groupes d'identités dans la console Amazon Cognito
. Sélectionnez une réserve d'identités. -
Choisissez l'onglet Accès utilisateur.
-
Sélectionnez Ajouter un fournisseur d'identité.
-
Choisissez Google.
-
Entrez l'ID client du OAuth projet que vous avez créé sur Google Cloud Platform
. Pour plus d'informations, consultez la section Configuration de la OAuth version 2.0 dans l'aide de la console Google Cloud Platform. -
Pour définir le rôle demandé par Amazon Cognito lorsqu'il délivre des informations d'identification aux utilisateurs qui se sont authentifiés auprès de ce fournisseur, configurez Paramètres de rôle.
-
Vous pouvez attribuer aux utilisateurs de ce fournisseur d'identité le rôle par défaut que vous avez configuré lorsque vous avez configuré votre rôle authentifié, ou vous pouvez sélectionner Choisir un rôle avec des règles.
-
Si vous avez choisi Choisir un rôle avec des règles, saisissez la demande source issue de l'authentification de votre utilisateur, l'opérateur avec lequel vous souhaitez comparer ce champ standard, la valeur qui entraînera une correspondance avec ce choix de rôle et le rôle que vous souhaitez attribuer si l'attribution de rôle correspond. Sélectionnez Ajouter un autre pour créer une règle supplémentaire basée sur une condition différente.
-
Choisissez une résolution de rôle. Lorsque les champs standard de votre utilisateur ne correspondent pas à vos règles, vous pouvez refuser les informations d'identification ou émettre des informations d'identification pour votre rôle authentifié.
-
-
-
Pour modifier les balises de principal qu'Amazon Cognito attribue lorsqu'il délivre des informations d'identification aux utilisateurs qui se sont authentifiés auprès de ce fournisseur, configurez Attributs de contrôle d'accès.
-
Pour n'appliquer aucune balise de principal, choisissez Inactif.
-
Pour appliquer les balises de principal en fonction des champs standard
sub
etaud
, choisissez Utiliser les mappages par défaut. -
Pour créer votre propre schéma personnalisé d'attributs pour les balises de principal, choisissez Utiliser des mappages personnalisés. Saisissez ensuite une clé de balise que vous souhaitez obtenir à partir de chaque demande que vous souhaitez représenter dans une balise.
-
-
Sélectionnez Enregistrer les modifications.
Utilisation de Google
Pour activer la connexion avec Google dans votre application, reportez-vous à la documentation Google pour le web
Une authentification réussie produit un objet de réponse contenant un jeton id_token
qu'Amazon Cognito utilise pour authentifier l'utilisateur et générer un identifiant unique :
function signinCallback(authResult) { if (authResult['status']['signed_in']) { // Add the Google access token to the Amazon Cognito credentials login map. AWS.config.credentials = new AWS.CognitoIdentityCredentials({ IdentityPoolId: 'IDENTITY_POOL_ID', Logins: { 'accounts.google.com': authResult['id_token'] } }); // Obtain AWS credentials AWS.config.credentials.get(function(){ // Access AWS resources here. }); } }
Unity
Configuration de Google
Pour activer la connexion Google pour une application Unity, créez un projet de console Google Developers pour votre application.
-
Accédez à la console Google Developers
et créez un projet. -
Choisissez APIs& Services, puis écran de OAuth consentement. Personnalisez les informations que Google montre à vos utilisateurs quand il leur demande de consentir à partager leurs données de profil avec votre application.
-
Choisissez Identifiants, puis Créer des identifiants. Choisissez l'identifiant OAuth du client. Sélectionnez Application web comme Type d'application. Créez un ID client distinct pour chaque plateforme où vous développez votre application.
-
Pour Unity, créez un identifiant OAuth client supplémentaire pour Android et un autre pour iOS.
-
Dans Identifiants, choisissez Gérer les comptes de service. Choisissez Créer un compte de service. Saisissez les détails de votre compte de service, puis choisissez Créer et continuer.
-
Accordez au compte de service l'accès à votre projet. Accordez aux utilisateurs l'accès au compte de service selon les besoins de votre application.
-
Choisissez votre nouveau compte de service, choisissez l'onglet Clés et Ajouter une clé. Créez et téléchargez une nouvelle JSON clé.
Pour plus d'informations sur l'utilisation de la console Google Developers, consultezCréer et gérer des projets
Création d'un fournisseur OpenID dans la console IAM
-
Créez un fournisseur OpenID dans la IAM console. Pour obtenir des informations sur la façon de configurer un fournisseur OpenID, consultez la page Utilisation des fournisseurs d'identité OpenID Connect.
-
Lorsque vous êtes invité à indiquer votre fournisseurURL, entrez
"https://accounts.google.com"
. -
Lorsque vous êtes invité à saisir une valeur dans le champ Audience, saisissez l'un des trois clients IDs que vous avez créés au cours des étapes précédentes.
-
Choisissez le nom du fournisseur et ajoutez deux audiences supplémentaires avec les deux autres clientsIDs.
Configuration du fournisseur externe dans la console Amazon Cognito
Choisissez Manage Identity Pools (Gérer les groupes d'identité) dans la page d'accueil de la console Amazon Cognito
Pour ajouter un fournisseur d'identité (IdP) Google
-
Choisissez Groupes d'identités dans la console Amazon Cognito
. Sélectionnez une réserve d'identités. -
Choisissez l'onglet Accès utilisateur.
-
Sélectionnez Ajouter un fournisseur d'identité.
-
Choisissez Google.
-
Entrez l'ID client du OAuth projet que vous avez créé sur Google Cloud Platform
. Pour plus d'informations, consultez la section Configuration de la OAuth version 2.0 dans l'aide de la console Google Cloud Platform. -
Pour définir le rôle demandé par Amazon Cognito lorsqu'il délivre des informations d'identification aux utilisateurs qui se sont authentifiés auprès de ce fournisseur, configurez Paramètres de rôle.
-
Vous pouvez attribuer aux utilisateurs de ce fournisseur d'identité le rôle par défaut que vous avez configuré lorsque vous avez configuré votre rôle authentifié, ou vous pouvez sélectionner Choisir un rôle avec des règles.
-
Si vous avez choisi Choisir un rôle avec des règles, saisissez la demande source issue de l'authentification de votre utilisateur, l'opérateur avec lequel vous souhaitez comparer ce champ standard, la valeur qui entraînera une correspondance avec ce choix de rôle et le rôle que vous souhaitez attribuer si l'attribution de rôle correspond. Sélectionnez Ajouter un autre pour créer une règle supplémentaire basée sur une condition différente.
-
Choisissez une résolution de rôle. Lorsque les champs standard de votre utilisateur ne correspondent pas à vos règles, vous pouvez refuser les informations d'identification ou émettre des informations d'identification pour votre rôle authentifié.
-
-
-
Pour modifier les balises de principal qu'Amazon Cognito attribue lorsqu'il délivre des informations d'identification aux utilisateurs qui se sont authentifiés auprès de ce fournisseur, configurez Attributs de contrôle d'accès.
-
Pour n'appliquer aucune balise de principal, choisissez Inactif.
-
Pour appliquer les balises de principal en fonction des champs standard
sub
etaud
, choisissez Utiliser les mappages par défaut. -
Pour créer votre propre schéma personnalisé d'attributs pour les balises de principal, choisissez Utiliser des mappages personnalisés. Saisissez ensuite une clé de balise que vous souhaitez obtenir à partir de chaque demande que vous souhaitez représenter dans une balise.
-
-
Sélectionnez Enregistrer les modifications.
Installation du plugin Unity Google
-
Ajoutez le plugin Google Play Games pour Unity
au projet Unity. -
Dans Unity, depuis le menu Windows, utilisez les trois IDs pour les plateformes Android et iOS pour configurer le plugin.
Utilisation de Google
L'exemple de code suivant illustre comment récupérer le jeton d'authentification auprès du service Google Play :
void Start() { PlayGamesClientConfiguration config = new PlayGamesClientConfiguration.Builder().Build(); PlayGamesPlatform.InitializeInstance(config); PlayGamesPlatform.DebugLogEnabled = true; PlayGamesPlatform.Activate(); Social.localUser.Authenticate(GoogleLoginCallback); } void GoogleLoginCallback(bool success) { if (success) { string token = PlayGamesPlatform.Instance.GetIdToken(); credentials.AddLogin("accounts.google.com", token); } else { Debug.LogError("Google login failed. If you are not running in an actual Android/iOS device, this is expected."); } }
Xamarin
Note
Amazon Cognito ne prend pas en charge Google en mode natif sur la plateforme Xamarin. Elle nécessite actuellement l'utilisation d'une vue Web pour suivre la procédure de connexion dans le navigateur. Pour savoir comment fonctionne l'intégration de Google avec d'autres plateformesSDKs, veuillez sélectionner une autre plateforme.
Pour activer la connexion avec Google dans votre application, authentifiez vos utilisateurs et obtenez d'eux un jeton OpenID Connect. Amazon Cognito utilise ce jeton pour générer un identifiant utilisateur unique associé à une identité Amazon Cognito. Malheureusement, Google SDK pour Xamarin ne vous permet pas de récupérer le jeton OpenID Connect. Utilisez donc un autre client ou le flux Web dans une vue Web.
Une fois que vous avez ce jeton, vous pouvez le définir dans CognitoAWSCredentials
:
credentials.AddLogin("accounts.google.com", token);
Note
Si votre application utilise Google et qu'elle est disponible sur plusieurs plateformes mobiles, vous devez configurer Google en tant que fournisseur OpenID Connect. Ajoutez tous les clients créés IDs en tant que valeurs d'audience supplémentaires pour une meilleure intégration. Pour en savoir plus sur le modèle d'identité à plusieurs clients de Google, consultez cette page