2015-09-23 8 views
10

So erstellen Sie ein permanentes Zugriffstoken für eine StrongLoop-API. Jetzt erstellt er für jeden Benutzer ein Zugangstoken. Und unnötiger Eintrag in meinem dbErstellen von permanenten AccessToken im Loopback

Ich kann die Gültigkeit von Access Token (ttl) wie erwähnt here erhöhen.

Aber immer noch wird es für die neue Anmeldung generieren.

Antwort

7

Sie vermischen 2 verschiedene Dinge. Die AccessToken-Eintragserstellung und der Ttl-Wert für das AccessToken.

Wenn sich ein Benutzer anmeldet, wird ein neues AccessToken erstellt. Wenn sich der Benutzer abmeldet, wird das AccessToken entfernt. Wenn sich der Benutzer 2 Mal anmeldet, zum Beispiel von 2 verschiedenen Geräten, erhalten Sie 2 AccessTokens, so dass der Benutzer von den 2 Geräten gleichzeitig auf Ihre App zugreifen kann.

Wenn der Benutzer sich vom selben Gerät aus anmelden möchte und bereits ein gültiges Token besitzt, sollte Ihre App dies erkennen und sich automatisch anmelden.

Offensichtlich, wenn der TTL-Wert abgelaufen ist, wird das Token nicht mehr gültig sein. Dieses Token wird entfernt, wenn versucht wird, es zu verwenden. Ich denke, wenn Sie diese Datensätze in Ihrer Datenbank nicht möchten, können Sie einen benutzerdefinierten Cron-Job erstellen, der abgelaufene Token entfernt.

In Bezug auf das permanente Zugriffstoken muss der ttl-Wert deaktiviert werden. Dies ist im Moment für das standardmäßige AccessToken-Modell nicht möglich. Ich habe eine pull request to support that erstellt, wenn Sie interessiert sind, könnten Sie hineinspielen und sehen, ob es zusammengeführt wird.

+0

Jesus Carrera, wenn Sie erwähnen: ' Wenn der Benutzer sich vom selben Gerät aus anmelden möchte und bereits ein gültiges Token besitzt, sollte Ihre App dies erkennen und sich automatisch anmelden.' Was meinen Sie. Ich kann die richtige Methode im Benutzermodell oder im erweiterten Benutzermodell nicht finden, um den Benutzer mit dem gültigen Token anzumelden, mir fehlt wahrscheinlich etwas. Alles, was ich sehen kann, ist eine Möglichkeit, den Benutzer zu authentifizieren, indem er erneut den Benutzernamen/pwd fragt, was ich verstehe, dass es nicht der richtige Weg ist, wenn der Benutzer ein gültiges Token hat? Können Sie einen Einblick in die Anmeldung des Benutzers mit dem gültigen Token geben? –

+0

Wenn Sie über ein gültiges Zugriffstoken verfügen, in dem Sie bereits angemeldet sind, müssen Sie das Zugriffstoken nur für jede Anforderung bereitstellen, für die eine Authentifizierung erforderlich ist. – Arne

Verwandte Themen