Es ist möglich, Benutzer durch einen oder mehrere externe Anbieter zu authentifizieren. Dies kann den Login-Prozess verkürzen und vereinfachen, bietet aber eine grössere Angriffsfläche für böswillige Akteure. Zusätzlich ermöglicht diese Art der Authentifizierung sogenannte Single-Sign-On Szenarien.
Anforderungen
Aktuell wird nur das OpenID Connect Protokoll unterstüztunterstützt
Standardmässig, müssen die Benutzer in der Applikation vorhanden sein. Der gemeinsame Nenner dabei ist die E-Mail Adresse. Dies kann durch eine eigene Implementation erweitert werden, um z.B. eine “silent registration“ zu ermöglichen. Mehr dazu im
TODO
hier: Externe Authentifizierung erweitern
Konfiguration
Die Registration der verschiedenen externen Anbietern erfolgt in der appsettings.json
-Datei der Server-Solution. Dazu muss ein neuer Block mit dem Schlüssel ThirdPartyAuthentication
hinzugefügt werden.
...
| Diese URI wird durch das OpenID Connect Protokol vorgegeben und dient dazu, dass die ermöglicht das automatische Abrufen der verschiedenen Endpunkte für Authentifizierung, Benutzerprofil, etc. abzurufen. |
| Die Client-Id wird von ihrem Ihrem Anbieter ausgestellt und identifiziert Ihre OpenID Connect Instanz. |
| Die Das Client-Secret ist bei wird von Ihrem Anbieter ersichtlich ausgestellt und dient als Passwort , um diesen zu benutzen zu könnenzur Authentifizierung Ihrer OpenID Connect Instanz. |
| An diese URI wird eine Nachricht gesendet, nachdem sich der Benutzer erfolgreich am externen Anbieter angemeldet hat. |
| Das Icon welches auf der linken Seite des alternativen Login-Buttons auf dem Client des Client’s angezeigt wird. Der Wert kann eine |
| Der Text, welcher inerhalb innerhalb des alternativen Login-Buttons auf dem Client des Client’s angezeigt wird. Es kann ebenfalls ein Übersetzungsschlüssel angegeben werden. |
Resultat
Nach erfolgter Konfiguration und einem Neustart des Servers, ergänzt sich der Login-Dialog automatisch mit den alternativen Login-Buttons.
Beispiel:
...