Android SSO (Single Sign-On) für AppAndroid

Forum für diejenigen, die für Android programmieren
Anonymous
 Android SSO (Single Sign-On) für App

Post by Anonymous »

Gibt es einen kostenlosen Single-Sign-Mechanismus für Android, der problemlos mit Nicht-Webanwendungen funktioniert? Sagen wir, etwas in der Art von...
  • Sie starten meine App und verwenden sie, bis sie eine Anfrage vom App-Server stellt, die eine Authentifizierung erfordert. Auf diese Anfrage antwortet es mit einem zufälligen Token, das der Server für kurze Zeit mit Ihnen verknüpft.
  • Die App präsentiert Ihnen ein Benutzernamenfeld, ein Passwortfeld und eine Schaltfläche zum Senden.
  • Sie geben Ihren Benutzernamen und Ihr Passwort ein. Die App leitet dann Ihren Benutzernamen und Ihr gehashtes Passwort zusammen mit dem vom App-Server generierten Token an den Anmeldedienst weiter.
  • Der Anmeldedienst ermittelt, ob Ihr Benutzername und Ihr Passwort gültig sind oder nicht. Wenn dies der Fall ist, versieht es das Token mit einem digitalen Zeitstempel, signiert es und gibt das signierte Token an die App zurück.
  • Die App leitet das signierte Token an den Server weiter.
  • Der Server überprüft die Signatur, stellt sicher, dass sie gültig und von einer vertrauenswürdigen Autorität signiert ist, und verfährt so, als hätte der Benutzer der IT einen gültigen lokalen Benutzernamen und ein gültiges Passwort vorgelegt Stattdessen.
Ich vermute, dass ich mich nur in der Nomenklatur verliere, aber bisher habe ich den Eindruck gewonnen, dass alle üblichen SSO-Anbieter – Twitter, Facebook usw. – Benutzern nur erlauben, sich mit einem normalen Browser anzumelden, und dass Sie entweder nicht das tun dürfen, was ich beschrieben habe, oder sie tun etwas, das es mit etwas anderem als einem normalen Browser praktisch unmöglich macht (wie die dynamische Erstellung des Anmeldeformulars über Javascript in einem Versuch, zu verhindern, dass Entwickler versuchen, ihre eigenen Apps als Anmeldefassade zu verwenden.

Gibt es alternativ einen Workflow wie DIESEN...
  • Sie starten meine App und verwenden sie, bis der Webdienst eine Anmeldung erfordert. Der App-Server generiert ein Token und gibt es an die App zurück.
  • Die App erzeugt dadurch einen neuen Browser sendet Sie zur Website des Anmeldeanbieters und übergibt das Token absichtlich als POST-Formular an den Browser (und letztendlich an den Anbieter).
  • Sie melden sich über das Browserfenster an, und das Browserfenster schließt sich – Sie kehren zu meiner App zurück.
  • Der Anmeldeanbieter signiert das Token und sendet es dann direkt per HTTP-POST an meinen App-Server, damit ich seine Übermittlung notieren, das Zertifikat überprüfen, und behandeln Sie es so, als wäre es stattdessen ein gültiger Benutzername und ein gültiges Passwort, die der Benutzer direkt an den App-Server selbst übermittelt.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post