2017-07-24 2 views
0

Ich versuche, ein vergessenes Passwort in meiner App zu erstellen. Also begann ich mit:Cognito - Wie bekomme ich einen Benutzer basierend auf Passwort vergessen?

val secret = getSigned64BaseContent(cognitoAppSecret, (email + cognitoAppId).getBytes(), HMAC_SHA256) 
val forgotPassword = new ForgotPasswordRequest() 
    .withUsername(email) 
    .withClientId(cognitoAppId) 
    .withSecretHash(secret) 
client.forgotPassword(forgotPassword) 

in einer E-Mail an den Benutzer gesendet Diese führen wird. Die E-Mail wird eine URL zu meiner App enthalten, die so etwas wie folgt aussehen:

https://my.app.com/forgetPassword?token={code} 

Wenn der Benutzer auf die URL klicken, werde ich auf diesen Code im Zusammenhang den Benutzer abgerufen werden sollen und von dort aus weiter nach ihm umgeleitet zu ein Bildschirm mit der Fähigkeit, das Passwort zu ändern, und dann den Fluss mit ConfirmForgotPasswordRequest abzuschließen.

Die Frage ist, wie kann ich den Benutzer basierend auf dem Code bekommen? Gibt es eine Möglichkeit, es zu tun?

Antwort

1

Cognito bietet keine solche API zum Abrufen eines Benutzers anhand des Bestätigungscodes an. Nicht sicher, ob dies eine gültige Problemumgehung ist, aber können Sie der von Ihnen generierten URL nicht die erforderlichen Informationen hinzufügen?

+0

Ja, das habe ich gemacht. Das Problem war, dass ich den Stromfluss, der mit Stormpath arbeitete, nahtlos ersetzen musste ... trotzdem danke. – Tomer

Verwandte Themen