StefanWe 14 Geschrieben 5. April 2020 Melden Teilen Geschrieben 5. April 2020 Hallo, ich versuche seit Tagen mich mit dem Thema OAUTH zu beschäftigen. (Nicht im Zusammenhang mit Azure) Wir bekommen eine Web App und die Entwickler möchten gerne OAUTH nutzen. Allerdings fehlen mir viele Grundlagen, die ich mir durch Recherche im Internet nicht zusammenreimen kann. SAML hingegen kenn ich und nutze ich schon seit Jahren. Wenn ich es richtig verstehe, ist oauth ein authorization Protokoll, aber nicht für Authentifizierung gedacht. Aber wie authentifiziert sich ein Anwender vorher? Der oauth Server kann ja nicht jedem x beliebigen ein Access Token ausstellen. Woran erkenne ich, ob ich oauth, oder openid connect nutze? Zitieren Link zu diesem Kommentar
Nobbyaushb 1.471 Geschrieben 5. April 2020 Melden Teilen Geschrieben 5. April 2020 Dazu hat @NilsK glaube ich mal was geschrieben bzw. eine Session gehabt Zitieren Link zu diesem Kommentar
NilsK 2.934 Geschrieben 5. April 2020 Melden Teilen Geschrieben 5. April 2020 Moin, OAuth ist, wie du schon richtig sagst, ein Protokoll zur Autorisierung, nicht zur Authentifizierung. Es dient also dazu, bereits "angemeldeten" Identitäten den Zugriff auf zusätzliche Ressourcen zu gewähren: Ein Facebook-User könnte so seine eigenen Tweets nach Facebook übernehmen. Die Session, die Norbert meint, ist diese: [Woher kennt mich die Cloud? Die Folien | faq-o-matic.net]https://www.faq-o-matic.net/2017/11/29/woher-kennt-mich-die-cloud-die-folien/ Tatsächlich wird OAuth bisweilen auch zur Authentifizierung verwendet, man kann das so hinbiegen (ich habe mich mit dem Teil selbst noch nicht beschäftigt). Die Hüter des Standards raten selbst aber davon ab: [End User Authentication with OAuth 2.0 — OAuth]https://oauth.net/articles/authentication/ Die Empfehlung lautet in solchen Fällen daher, auf OpenID Connect zu setzen. Aus Erfahrung rate ich dir, dazu intensiv mit deinem Anbieter zu sprechen. Ich erlebe es allzu oft, dass ein Applikationsanbieter kaum Kenntnisse von der Technik hat und dadurch am Ende ziemlichen Murks implementiert ... Gruß, Nils Zitieren Link zu diesem Kommentar
StefanWe 14 Geschrieben 6. April 2020 Autor Melden Teilen Geschrieben 6. April 2020 vor 11 Stunden schrieb NilsK: Moin, OAuth ist, wie du schon richtig sagst, ein Protokoll zur Autorisierung, nicht zur Authentifizierung. Es dient also dazu, bereits "angemeldeten" Identitäten den Zugriff auf zusätzliche Ressourcen zu gewähren: Ein Facebook-User könnte so seine eigenen Tweets nach Facebook übernehmen. Die Session, die Norbert meint, ist diese: [Woher kennt mich die Cloud? Die Folien | faq-o-matic.net]https://www.faq-o-matic.net/2017/11/29/woher-kennt-mich-die-cloud-die-folien/ Tatsächlich wird OAuth bisweilen auch zur Authentifizierung verwendet, man kann das so hinbiegen (ich habe mich mit dem Teil selbst noch nicht beschäftigt). Die Hüter des Standards raten selbst aber davon ab: [End User Authentication with OAuth 2.0 — OAuth]https://oauth.net/articles/authentication/ Die Empfehlung lautet in solchen Fällen daher, auf OpenID Connect zu setzen. Aus Erfahrung rate ich dir, dazu intensiv mit deinem Anbieter zu sprechen. Ich erlebe es allzu oft, dass ein Applikationsanbieter kaum Kenntnisse von der Technik hat und dadurch am Ende ziemlichen Murks implementiert ... Gruß, Nils Hi Nils, danke für das Feedback. Letzteres ist genau unser Ding. ich vermute, dass dort etwas entsteht, was nicht unbedingt viele durchblicken. Leider ist es sehr schwierig oauth know how zu finden. Wenn es um mehr geht, als seine eigene WebApp an Facebook oder Twitter anzubinden... Unser Szenario soll wie folgt aussehen: Wir haben ein vorhandenes Extranet, welches über ein Forms basierte Anmeldemaske die "Kunden" authentifiziert. Dabei stehen die Benutzer und Kennwörter in einer Oracle DB. Die Forms Anmeldemaske ist auch irgendetwas von Oracle. Nun soll in das Extranet ein Webplanner integriert werden. Dieser erfordert die Authorisierung über oauth. Was vom Ansatz auch gut ist. Nun fragen wir uns aber, wie wir das so integriert bekommen. Da wir ja derzeit keinen oauth Authorization Server haben. Ich kann ja schlecht mich am Extranet über die Forms Anmeldung anmelden und irgendein oauth Authorization Server stellt dann das Ticket für den Benutzer zur Nutzung des WebPlanners aus. Aktuell ist meine Idee, die Extranet Anmeldung auf einen Citrix Netscaler umzubauen, dieser würde ins Backend gegen einen LDAP Server prüfen (nicht Active Directory). Könnte dann aber auch für den Webplanner das oauth Ticket ausstellen, da der User ja generell über eine Sitzung Verfügt. Oder hab ich einen Denkfehler ? Zitieren Link zu diesem Kommentar
NilsK 2.934 Geschrieben 6. April 2020 Melden Teilen Geschrieben 6. April 2020 Moin, typischerweise wirst du sowas nicht hinbekommen, ohne beide Seiten - also beide Applikationshersteller - ins Boot zu holen. Vielleicht gibt es da schon Schnittstellen, die du nutzen kannst. Vielleicht müsste da aber auch erst was implementiert werden. Keine der modernen Auth*-Techniken bekommst du von außen nachträglich angekorkt, wenn das in den Applikationen nicht vorgesehen ist. Ein Applikationshersteller sollte dich dabei unterstützen können, jedenfalls so weit, dass ein kundiger Dritter dir dabei helfen kann. Es kann nicht deine Aufgabe als Kunde sein, das alles selbst zu entwickeln. Wer hat denn die bisherige Authentisierung des "Extranets" gebaut und auf welcher Technik beruht das? Gruß, Nils Zitieren Link zu diesem Kommentar
StefanWe 14 Geschrieben 6. April 2020 Autor Melden Teilen Geschrieben 6. April 2020 vor 4 Stunden schrieb NilsK: Moin, typischerweise wirst du sowas nicht hinbekommen, ohne beide Seiten - also beide Applikationshersteller - ins Boot zu holen. Vielleicht gibt es da schon Schnittstellen, die du nutzen kannst. Vielleicht müsste da aber auch erst was implementiert werden. Keine der modernen Auth*-Techniken bekommst du von außen nachträglich angekorkt, wenn das in den Applikationen nicht vorgesehen ist. Ein Applikationshersteller sollte dich dabei unterstützen können, jedenfalls so weit, dass ein kundiger Dritter dir dabei helfen kann. Es kann nicht deine Aufgabe als Kunde sein, das alles selbst zu entwickeln. Wer hat denn die bisherige Authentisierung des "Extranets" gebaut und auf welcher Technik beruht das? Gruß, Nils Ok, hätte ich dazusagen sollen, das Extranet ist von uns selbst entwickelt. ;) Zitieren Link zu diesem Kommentar
NilsK 2.934 Geschrieben 6. April 2020 Melden Teilen Geschrieben 6. April 2020 Moin, naja, dann ... baut euch eine Authentisierungsfunktion, die auf Open ID Connect beruht. Oder eine mit SAML, die dann die Drittsoftware über OAuth anspricht. Gruß, Nils Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.