Jump to content

Unterschied OAUTH und OpenID Connect


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

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?

Link zu diesem Kommentar

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

 

Link zu diesem Kommentar
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 ?

 

 

Link zu diesem Kommentar

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

 

Link zu diesem Kommentar
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. ;)

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...