2016-03-22 1 views
0

Ich identifiziere derzeit einen Benutzer eindeutig, indem ich die FacebookID dieses Benutzers speichere. Ich las vor kurzem herum und ich sah, dass dies eine falsche Verwendung ist und dass sich Facebook-IDs aus irgendeinem Grund ändern können, alles in allem, dass ich sie nicht verwenden sollte. Ist das wahr? Wenn ja, ist eine AWS Cognito ID, die abgeleitet wird, wenn sich ein neuer Facebook-Benutzer anmeldet und authentifiziert, eine praktikable Möglichkeit, einen Benutzer eindeutig zu identifizieren? Wenn nicht, wie würde ich einen Facebook-Account eindeutig mit einer eindeutigen ID verknüpfen, die stabil genug ist, um sie in meiner Datenbank zu speichern?Facebook ID oder Cognito ID oder Alternative für meine iPhone Applikation

Antwort

1

Überprüfen Sie die folgende Anweisung (von der offiziellen Dokumentation: https://developers.facebook.com/docs/apps/upgrading):

Egal, welche Version sie ursprünglich für Ihre App registrieren verwendet, die ID wird das gleiche für die Menschen bleiben, die bereits angemeldet haben, in deine App Diese Änderung ist abwärtskompatibel für alle Personen, die sich zu einem beliebigen Zeitpunkt in der App angemeldet haben.

So können Sie die Facebook ID zur eindeutigen Identifizierung Ihrer Benutzer verwenden.

Allerdings sollten Sie, abhängig von Ihrem Anwendungsfall und der Art, wie Sie die Sicherheit verwalten möchten, einige weitere Dinge in Betracht ziehen. Der Zweck von AWS Cognito ID ist nicht zwischen Nutzern zu kommunizieren, sondern zwischen Ihrer App und Cognito. Wenn Sie möchten, dass Benutzer mit ihren Konten kommunizieren (zum Beispiel SMS senden), ist die Facebook-ID dafür besser geeignet. Nichtsdestotrotz erlebe ich this problem, wenn ich versuche, eine feinkörnige Zugriffskontrolle mit DynamoDB zu erreichen.

+0

Sie sagen also, dass ich die Facebook ID zur eindeutigen Identifizierung eines Benutzers verwenden kann? – user2977578

+0

@ user2977578, Sie missverstanden, dass Facebook ID von App zu App für einen einzelnen Benutzer variiert, aber innerhalb einer einzigen App bleibt es immer gleich. Wie Hatim gesagt hat, können Sie sicher Facebook IDs verwenden, um Ihre Benutzer zu identifizieren. –

0

Wie HATIM sagte, ist die Cognito ID nicht dazu gedacht, zwischen Benutzern geteilt zu werden.

Das gesagt, sobald eine Identität ID eine Anmeldung zugeordnet ist, konnte es nur beim Zusammenführen mit einer anderen authentifizierten ID ändern. Wenn Sie das nicht tun, was nicht so klingt wie Sie, wäre dies eine stabile Möglichkeit, Ihre Benutzer zu identifizieren. Sie können die Identitäts-ID als Kennung in Ihrer Datenbank verwenden, sofern sie nicht verfügbar ist.

Wenn Sie DynamoDB verwenden, wie in this blog post beschrieben, können Sie auf diese Weise Ihre IAM-Rollen konfigurieren, um den Zugriff auf diese Daten sicherer zu machen.

Verwandte Themen