2017-05-15 3 views
1

Je reçois l'erreur suivante lors de la configuration de Firebase en tant que fournisseur d'identité AWS IAM à l'aide d'OpenID Connect.Utilisation du fournisseur OpenID Connect de Firebase en tant que fournisseur d'identité AWS IAM

Nous avons rencontré les erreurs suivantes lors du traitement de votre demande: S'il vous plaît vérifier .bien connu/openid configuration du fournisseur: https://securetoken.google.com/<Project ID> est valide.

La configuration du fournisseur Identity AWS IAM nécessite deux paramètres d'entrée, auquel je branché dans ce qui suit:
URL du fournisseur: https://securetoken.google.com/<Firebase Project ID>
Public: <Firebase Client ID>

Pour résoudre l'erreur, j'ai ouvert http: // <Provider URL> /. bien connu/openid-configuration dans un navigateur et noté la réponse JSON a les champs Issuer et jwks_uri. Je crois que ces champs JSON indiquent que l'URL Firebase OpenID Connect Provider est valide.

Une idée de comment j'ai pu éviter l'erreur ci-dessus et configurer avec succès le fournisseur d'identité AWS IAM?

Répondre

3

J'ai contacté le support AWS et ils ont aidé à résoudre le problème. Merci à Shaun H @ AWS!

La solution au problème est de utiliser AWS CLI au lieu de console AWS pour configurer un fournisseur OIDC.

Je colle les parties pertinentes de la réponse de Shaun ci-dessous: 1.) Procurez-vous manuellement et vérifiez l'empreinte en utilisant la procédure décrite ici [1].
"ThumbprintList" = "6040DB92306CC8BCEB31CACAC88D107430B16AFF"

2.) Créer le fournisseur d'identité OIDC utilisant AWS Cli [2]. Par exemple: $ aws iam créer-ouvrir-id-connecter-fournisseur --cli-input-json fichier: //oidc.json Note - le format serait:
Audience Doit être votre ID de projet Firebase, l'unique identificateur de votre projet Firebase, qui peut être trouvé dans l'URL de la console de ce projet. Iss Issuer Doit être https://securetoken.google.com/<projectId>, où est le même ID de projet utilisé pour aud ci-dessus.

contenu pour le fichier: //oidc.json: (remplacer par votre numéro de projet)

{ 
    "Url": "https://securetoken.google.com/<Firebase Client ID>", 
    "ClientIDList": [ "<Firebase Client ID>" ], 
    "ThumbprintList": [ "6040DB92306CC8BCEB31CACAC88D107430B16AFF" ] 
} 

[1] http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_oidc_verify-thumbprint.html

[2] http://docs.aws.amazon.com/cli/latest/reference/iam/create-open-id-connect-provider.html

+0

Salut @ktrace, je suis aussi intéressé par cette configuration (Firebase for Authentication + AWS pour les services). Pouvez-vous détailler les étapes de configuration supplémentaires requises dans AWS pour que cela fonctionne? J'ai créé un rôle spécifique, l'ai utilisé dans mon pool d'identités fédérées, ai défini mon autorisation API Gateway sur IAM et j'envoie l'identifiant idToken de Google dans un en-tête Authorization à mon terminal, mais les erreurs continuent de se produire. Toute idée serait utile. Merci –