Was OpenID Connect-Berechtigung flow zum authentifizieren von mobilen app-Benutzer?

Baue ich ein cross-Plattform-mobile-app für die Interaktion mit einer RESTful-API, und ich will OpenID Connect zu authentifizieren meinem Benutzer. Ich Baue meine eigene OpenID Connect server des Anbieters.

OpenID.net Ansprüche, dass:

OpenID Connect ermöglicht für Kunden aller Art, einschließlich browser-basierte JavaScript und native mobile apps, um starten Sie sign-in fließt und erhalten nachprüfbare Behauptungen über die Identität der angemeldeten Nutzer.

Aber ich finde keine Dokumentation welche erklären, wie eigentlich authentifizieren, für eine mobile app client.

Diese StackExchange Antwort macht deutlich, dass OpenID Connect unterstützt nicht die "resource owner password-based grant" flow oder die "client-Berechtigungen" fließen.

Bleibt also nur noch die "authorization code" Fluss (normalerweise von server-side-Anwendungen) und die "implizite Vergabe" fließen (die in der Regel von client-side apps). Diese beiden scheinen sich darauf zu verlassen, das umleiten der Benutzer auf den Anbieter-Zulassung Endpunkt, und mit dem provider-redirect an den client zurück URL. Ich sehe nicht, wie Sie dieses anwenden können, um eine mobile app.

Kann jemand mir erklären (oder noch besser, zeigen Sie mich an einem tutorial oder Beispiel-code), die erklärt, wie dies zu tun?

Update

Klären: OpenID Connect basiert auf dem client umleiten der Benutzer die Autorisierungs-Endpunkt, und dann der Anbieter umleiten der Benutzer wieder an den client. In dem Fall, wo der client ist nicht eine web-app, wie kann das funktionieren?

  • Wenn OpenID Connect ist nur eine OAuth 2.0 Verlängerung, ich denke, dass die resource-owner-Anmeldeinformationen gewähren können dennoch umgesetzt werden durch den authorization server als Teil des OAuth-2.0-Spezifikationen ? sobald die mobile app hat ein access-token, ich sehe nichts in der OIDC Spezifikationen, die verbieten würde die app den Zugriff auf das Benutzer-info über die UserInfo Endpunkt.
  • siehe stackoverflow.com/questions/24047047/...
InformationsquelleAutor PGleeson | 2014-12-17
Schreibe einen Kommentar