Ich habe in der Vergangenheit eine Hand gerollt App, die ein Benutzer-Token auf Client-Seite $ window.sessionStorage speichert getan.User Auth - oAuth Fragen
Ich habe seitdem festgestellt, dass dies nicht sicher ist. Ich bin jetzt auf der Suche nach der sichersten, Standardmethode, um eine App zu sichern, die eine Node/Express-Backend-API verwendet, die ich machen werde, und verwendet auch ein Frontend, das Anfragen an diese API wie angular für das Web oder eine native mobile App stellt . Außerdem, wenn ich den Browser schließen würde, müsste ich mich neu anmelden, weil der Sitzungsspeicher des $ windows gelöscht wurde.
Nach was ich bis jetzt recherchiert habe, ist eine der sichersten Möglichkeiten zu datieren, wenn du handrollst, ist es, einen JWT in einem sicheren HTTP-Cookie zu speichern.
Allerdings würde ich gerne einen Dienst verwenden, der bereits existiert, wie oAuth. Paar Fragen:
1) Wie sicher ist oAuth in Bezug auf die Aufrechterhaltung Ownershp Ihrer Benutzerbasis? Was wäre, wenn oAuth in 3 Jahren plötzlich oder langsam ausstirbt? Sind nicht alle meine Benutzer technisch auf ihrem Server gespeichert? Wie würde ich meine Nutzer in meiner App nativ halten?
2) Wenn ich eine Startup-App im selben Bereich wie Snapchat, Twitter, Tumblr usw. erstelle, wäre es generell empfehlenswert, einen Dienst wie oAuth zu verwenden, um meine Authentifizierung zu handhaben? Natürlich ist die Zukunft nicht bekannt, aber unter der Annahme, dass meine App Millionen von Nutzern erreichen würde, wäre die Nutzung eines Dienstes wie oAuth immer noch eine kluge Wahl? Es sieht so aus, als ob Sie, sobald Sie mit oAuth arbeiten, nie wieder ein paar Jahre später Ihre Benutzer in Ihrer eigenen Datenbank speichern.
Dank
Empfehlungen sind * ausdrücklich * off-topic auf SO. – jonrsharpe
Empfehlungen über was? –
Alles, Authentifizierungsprotokolle und Dienste enthalten. – jonrsharpe