Ich möchte den Cognito-Benutzerpool als Identitätsanbieter verwenden. Ich authentifiziere meinen Benutzer. Ich versuche dann mit dem Benutzer in der Benutzer Pool um diesen Benutzer zu integrieren, indem Sie folgende Schritte ausführen:.AWS Cognito, Fehler bei der Integration eines Benutzers in einen Benutzerpool mit einem Identitätspool
var cognitoUser = userPool.getCurrentUser();
if (cognitoUser != null) {
cognitoUser.getSession(function(err, result) {
if (result) {
console.log('You are now logged in.');
// Add the User's Id Token to the Cognito credentials login map.
AWS.config.credentials = new AWS.CognitoIdentityCredentials({
IdentityPoolId: 'YOUR_IDENTITY_POOL_ID',
Logins: {
'cognito-idp.<region>.amazonaws.com/<YOUR_USER_POOL_ID>': result.getIdToken().getJwtToken()
}
});
}
});
}
die Antwort von AWS ist „Invalid Login-Token jedoch nicht über eine gültige OpenID Connect Identitätsmarke. "
Die Anfrage Nutzlast war wie folgt aus:
{ "IdentityPoolId": "eu-west-1: idPoolValue", "Logins": { "loginString": „cognito-idp.eu-West -1.amazonaws.com/regionValue: id Tokenwert“}}
ich habe die empfindlichen Teile mit einem String ersetzt. Ich habe den Identitätspool so konfiguriert, dass der Benutzerpool als Authentifizierungsanbieter verwendet wird.
Gibt es weitere Schritte, die ich verpasst habe oder die nicht dokumentiert sind?
Der Code, den Sie hochgeladen haben, ist für JS, Sie benötigten die Java-Version. –