Also ich möchte single anmelden, in allen Produkten mit einem Auth-Server, aber das ist nicht nur für Mitarbeiter, Keycloak sollte dazu wie auth0 verwendet werden?KeyCloak sollte als Authentifizierungsserver für meine Benutzer verwendet werden?
Antwort
Sowohl Auth0 als auch Keycloak sollten in der Lage sein, Ihr Ziel zu erreichen - vorausgesetzt, Sie wollen nur soziale (Facebook, Google usw.) und/oder Benutzername & Passwort-Authentifizierung?
Auth0 ist die weniger riskante Option, keycloak ist gut für nicht-kommerzielle &, wo Sie Produktionsausfälle ohne ein globales 24x7-Support-Team leisten können. Hier ein paar andere Gründe, warum ich Auth0 empfehlen würde - die Dokumentation ist Weltklasse, sie haben Quickstart-Beispiele, so dass Sie in wenigen Minuten einsatzbereit sind und einfachen Zugang zu erweiterten Optionen haben - Passwortlos, Authentifizierung, MFA, Anomalieerkennung, X9's Zuverlässigkeit, Rate-Limiting, eine umfassende Management-API, Erweiterungen für alles, zB Exportieren von Protokollen zum Log-Aggregator, und so weiter. Wie auch immer, viel Glück mit Ihrem Projekt, und offensichtlich, was am besten passt, kann einfach auf Ihre eigenen Projektanforderungen zurückzuführen sein.
Fügen Sie hinzu, wenn Sie Mobile machen, dann Auth0 viel Aufwand hinzufügen die notwendigen spezialisierten Sicherheitsabläufe zu zielen mobile (native/hybride) apps. Zum Beispiel PKCE-Nutzung bei Verwendung von /authorize
Endpunkt. Bitte bedenken Sie das, da nicht sicher ist, wie der Schlüsselumschlag implementiert wurde - viele IDMs tun das heute noch falsch.
Es gibt auch einige Vorteile Keycloak:
Keycloak ist auch mit Unterstützung zur Verfügung, wenn Sie JBoss kaufen. Dies könnte billiger als die Enterprise-Version von Auth0 sein. Wenn Sie benutzerdefinierte DB verwenden möchten, benötigen Sie die Enterprise-Version von Auth0.
Keycloak verfügt über Funktionen, die in Auth0 nicht verfügbar sind: Fein abgestimmte Berechtigungen und rollenbasierte Zugriffssteuerung (RBAC) und attributbasierte Zugriffssteuerung (ABAC) über die Web Admin-Konsole oder benutzerdefinierten Code konfigurierbar. Dies kann auch in Auth0 über Benutzerregeln (benutzerdefiniertes JavaScript) oder Autorisierungs-Plugin (kein Code) implementiert werden. In Keycloak können Sie es ohne Code und feinkörniger machen. Hier wären einige detailliertere Untersuchungen interessant, um sie zu vergleichen.
Keycloak bietet auch Policy Enforcer - mit dem Sie eine Verbindung zu Ihrem Backend herstellen und überprüfen können, ob das Zugriffstoken ausreicht, um auf eine bestimmte Ressource zuzugreifen. Ich bin mir nicht sicher, ob dies in Auth0 enthalten ist. Darüber hinaus kann Keycloak Ihrer Clientanwendung mitteilen, welche Berechtigungen Sie benötigen, wenn Sie auf eine bestimmte Ressource zugreifen möchten, sodass Sie diese nicht in Ihrem Client codieren müssen. Der Workflow kann sein:
- Client-Anwendung will, fragt Keycloak Ressource R.
- Client-Anwendung für den Zugriff auf die Erlaubnis, es Ressource R.
- Kecloak teilt dem Client-Anwendung, die Erlaubnis P braucht es zugreifen muss.
- Die Clientanwendung fordert ein Zugriffstoken mit der Berechtigung P von Keycloak an.
- Der Client stellt eine Anforderung an den Ressourcenserver mit dem Zugriffstoken mit der angehängten Berechtigung P.
- Der Ressourcenserver kann Keycloak fragen, ob die Berechtigung P für den Zugriff auf die Ressource R ausreicht.
- Wenn Keycloak genehmigt ist, kann auf die Ressource zugegriffen werden.
So kann mehr in Keycloak zentralisiert und konfiguriert werden. Mit diesem Workflow kann Ihr Client- und Ressourcenserver mehr Sicherheitslogik und -code an Keycloak auslagern. In Auth0 müssen Sie wahrscheinlich die Schritte 2,3,6 selbst implementieren.
- 1. Authentifizierungsserver für Google Apps
- 2. Authentifizierungsserver
- 3. Welcher Zeichensatz sollte für Mysql verwendet werden
- 4. Wann sollte self für Klasseneigenschaften verwendet werden?
- 5. Wann sollte Flask.g verwendet werden?
- 6. Google App Engine als Authentifizierungsserver für mobile Anwendung
- 7. Keycloak Provider und Benutzerspeicher
- 8. Wann sollte WS_EX_NOREDIRECTIONBITMAP verwendet werden?
- 9. Welche Größe sollte für Fgets verwendet werden?
- 10. Welche Syntax sollte für WebMessageBodyStyle.Wrapped verwendet werden?
- 11. Sollte ViewData niemals verwendet werden?
- 12. Wann sollte StringBuilder verwendet werden?
- 13. Wann sollte FOUNDATION_EXPORT verwendet werden?
- 14. Benutzer keycloak Not Found Ausnahme
- 15. Wann sollte $ .extend ({...}) verwendet werden?
- 16. Wo sollte Rx verwendet werden?
- 17. Wann sollte plist verwendet werden?
- 18. Keycloak schaffen neue Benutzer nicht
- 19. Datenbankentwurf - Sollte ein Datum als Teil eines Primärschlüssels verwendet werden?
- 20. Sollte mailto in HTML5 verwendet werden?
- 21. Sollte die ibis-Domainklasse als Javabean verwendet werden?
- 22. Wann sollte wkWebView verwendet werden?
- 23. Wann sollte curl_close() verwendet werden?
- 24. Wann sollte range.value verwendet werden?
- 25. Wann sollte StringProperty über String verwendet werden?
- 26. In ASP.NET MVC sollte OnException für Anwendungsausnahmen verwendet werden?
- 27. Keycloak: Identity Provider Info
- 28. Wann sollte KeyChain in Android verwendet werden?
- 29. WSO2 api manager mit keycloak auth server
- 30. Sollte Singleton-Muster für Android MediaPlayer verwendet werden
Entschuldigung, Ihre Frage war unklar. Wenn Sie fragen, ob Auth0 SSO zwischen Anwendungen anbieten kann, und auch SSO-Verhalten sowohl für B2E (föderierte) Unternehmen, als auch B2C (soziale usw.) anbieten, dann kann ja Auth0 dafür verwendet werden. Sie benötigen keinen Schlüsselcloak, um eines der oben genannten zu erreichen - wenn Sie bereits keycloak verwenden, ist auch eine Föderation zwischen auth0 und keycloak möglich, aber ich spekuliere auf Ihr spezielles Szenario hier. – arcseldon
Es tut mir leid @arcseldon, Also der Fall ist, dass wir eine App sind, die jeder im Play Store herunterladen kann, wir möchten wissen, ob keycloak in unserem Fall für die Benutzerauthentifizierung verwendet werden kann, weil wir eine weitere App machen wollen und wir uns Single anmelden wollen. –
Augusto - keine Kommentare zu meiner Antwort? Bitte bestätigen Sie, dass dies geholfen hat. – arcseldon