1

Ich versuche, eine React-Anwendung zu entwickeln, mit der Benutzer sich mit ihren Azure AD-Konten und ihren Facebook-Konten anmelden können.Authentifizierung von Benutzern mit AWS Cognito + Azure AD + Facebook

Die erste Sache ist, dass ich nicht über die 2 Registerkarten "Benutzer Pools und Federation Identities" verstanden habe. Brauche ich beide, um es zu erledigen oder nur die User Pools ist genug?

Mein Ziel ist nur die Authentifizierung. Ich möchte nicht zulassen, dass Benutzer auf einen AWS-Dienst zugreifen. Ich möchte nur das Authentifizierungstoken.

Ich habe bereits den Benutzer über Facebook mit den Federation Identities und dem Facebook SDK angemeldet, aber ich weiß nicht, wie ich die Benutzerdaten speichern kann, nachdem ich den Token von Facebook auth bekommen habe. Ist es auch richtig, das Facebook SDK zu verwenden oder sollte ich Cognito verwenden, um alle Authentifizierungsmethoden für mich zu übernehmen?

Antwort

1

Benötige ich beides, um es zu erledigen oder nur die User Pools sind genug?
Nein. Benutzerpool ist mehr als genug, wenn Sie nur Authentifizierung benötigen und keine AWS-Dienste verwenden müssen.

Ich habe bereits den Benutzer über facebook mit den Federation Identities und dem Facebook SDK angemeldet, aber ich weiß nicht, wie ich die Benutzerdaten speichern kann, nachdem ich den Token von Facebook auth bekommen habe.
Welche Benutzerdaten müssen Sie speichern? Wenn Sie möchten, dass Benutzerprofildaten in Cognito gespeichert werden, müssen Sie Cognito-Benutzerpool & nicht föderierte Identitäten verwenden. Fügen Sie Facebook direkt zu Userpool hinzu. Wenn Sie die Facebook-Anmeldung verwenden, wird im Benutzerpool basierend auf allen im Token verfügbaren Benutzerdaten automatisch ein Benutzer erstellt. Unter this erfahren Sie, wie Sie Facebook direkt zu einem Benutzerpool hinzufügen können.

Ist es auch richtig das facebook SDK zu verwenden oder sollte ich Cognito verwenden, um alle Authentifizierungsmethoden für mich zu übernehmen?
Hängt von Ihrem Anwendungsfall ab. Wenn Sie nur eine App zu einer App hinzufügen möchten, besteht die beste Möglichkeit darin, Facebook direkt zu einem Userpool hinzuzufügen und einen App-Client im Userpool für Ihre Anwendung zu erstellen. Aktivieren Sie Facebook für diesen App-Client & Verwenden Sie die integrierte Benutzeroberfläche von Cognito Userpool, um sich über Facebook anzumelden. Diese Funktion (integrierte Benutzeroberfläche) heißt App Integration. Nach erfolgreichem Facebook Login wird ein gültiges Token an Ihre App gesendet. Beachten Sie, dass das an Ihre App gesendete Token von Cognito stammt.

Client -> userpool Einbau-UI -> Book Redirect -> Login mit Benutzername + Passwort -> sendet Facebook seine Token Cognito (https://your-user-pool-domain/oauth2/idpresponse)--> userpool vends seine eigene Token & an die URL umleitet erwähnt in der redirect_uri.

+0

danke mate, ich habe es jetzt! Und was ist mit einer mobilen app? Wenn Sie wie Social-Media-Logins haben und Sie nicht die integrierte Cognito-Benutzeroberfläche verwenden. Soll ich stattdessen das Facebook SDK verwenden und dann übergeben Sie die Daten (Token + Benutzer_Daten) zu Cognito? Ich benutze reactive native BTW –

+1

Sie können weiterhin Userpool.Wenn Sie eine eigene Benutzeroberfläche haben möchten, können Sie dies tun.Schauen Sie auf meine Antwort auf diese Frage. https: //stackoverflow.com/a/47035466/3479734 – agent420

Verwandte Themen