Estoy configurando la autenticación de Microsoft en Firebase (web js sdk), pero me encuentro con un error con firebase.auth.signInWithCredential . Puedo obtener con éxito un token de identificación de Microsoft, pero el paso de autenticación de Firebase falla. Probé Firebase v8 y v9, y varias formas de formar mi objeto de credencial. De hecho, recibo el mismo error incluso al pasar un token de acceso. Parece que hay algún problema con la biblioteca de Firebase. ¿Alguien ha experimentado este problema antes y lo ha resuelto?
Código:
const { id_token } = authResponse.params; // I've verified that id_token is correct const credential = new firebase.auth.OAuthProvider("microsoft.com").credential({ idToken: id_token, rawNonce: "12345", }); await firebase.auth().signInWithCredential(credential);La credencial parece generarse bien:
Object { "accessToken": undefined, "idToken": "eyJ0eXAiOiJKV...", "nonce": "12345", "pendingToken": null, "providerId": "microsoft.com", "secret": undefined, "signInMethod": "microsoft.com", } Pero el paso signInWithCredential obtiene el siguiente error:
Uncaught (in promise) code: "auth/internal-error" message: "Invalid IdP response/credential: http://localhost?id_token=eyJ0eXAiOiJKV..."Parece que signInWithCredential no es compatible con Microsoft OAuth. https://cloud.google.com/identity-platform/docs/web/microsoft Intentaré hacer signInWithCustomToken para los usuarios existentes y daré una advertencia a los nuevos usuarios para que se registren primero en la web, donde haré signInWithPopup