Anbindung via SAML2 (PVP2 S-Profil)

Hinweis: SAML2 steht ausschließlich für Browser-basierte Anwendungen zur Verfügung. Für die Integration der ID Austria Anmeldung in mobile Apps (App2App Authentifizierung) muss OIDC verwendet werden.

Der gesamte SAML2 Prozess ist gemäß dem Portalverbund PVP2 S-Profil umgesetzt.
Weitere Informationen: PVP2 S-Profil Spezifikationen

Die primäre Informationsquelle für SAML2 spezifische Parameter des ID Austria Systems stellen die SAML2 Metadaten des Identity Providers dar. Diese SAML2 Metadaten können unter folgender URL:

in signierter Form heruntergeladen werden.

Beispielhafter Request und Response einer Authentifizierung mittels SAML2 an der Anwendung

Die nachfolgende Beschreibung zeigt eine beispielhafte SAML2 Authentifizierung gemäß dem PVP2 S-Profil.

Um Benutzer zu authentifizieren, muss die Anwendung einen signierten SAML2 Authentifizierungsrequest erstellen welcher über den Browser des Benutzers an den Identity Provider des ID Austria System gesendet wird.  Hierfür werden durch den Identity Provider sowohl SAML2 POST-Binding als auch SAML2 Redirect-Binding unterstützt.

Beispiel für einen SAML2 Authentifizierungsrequest mittels POST-Binding:

POST https://eid.oesterreich.gv.at/auth/idp/profile/SAML2/POST/SSO HTTP/1.1
Host: eid.oesterreich.gv.at

Im Body des HTTP POST Requests wird der ‚SAMLRequest‘ entsprechend der SAML2 POST-Binging Spezifikation übermittelt:

Der IdP übermittelt anschließend eine Auswahl der zur Verfügung stehenden Authentifizierungsmethoden (ID Austria oder ggf. wenn vom SP konfiguriert auch EU Login, d.h. eIDAS) an den Web-Browser, wie in Abbildung 1 dargestellt.

Login mittels ID Austria
Abbildung 1: Auswahl der Authentifizierungsvariante

Anschließend führt der Benutzer die entsprechende Authentifizierung im Browser durch. Nach erfolgter Benutzer-Authentifizierung erstellt der IdP die SAML2 Assertion und übermittelt diese verschlüsselt via einer SAML2 Response an den Browser.

Beispiel für eine SAML2 Response:

HTTP/1.1 200 OK
SAMLResponse: "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHNhbWwycDpSZXNwb25zZSB
EZXN0aW5hdGlvbj0ia..."

Der Browser sendet die erhaltene SAML Response entsprechend dem verwendeten SAML2 Binding-Profil (in diesem Fall SAML2 POST-Binding) mittels HTTP POST Request an die Anwendung.

Beispiel für einen HTTP Request mit SAML2 Response:

POST https://beispielService.at/saml2/ HTTP/1.1
Host: beispielService.at
User-Agent: Mozilla/5.0

Im Body des Post Requests werden der Parameter ‚SAMLResponse‘ übermittelt

SAMLResponse=PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c2...

vollständige verschlüsselte SAML2 Response in Base64 kodierter Form
vollständige verschlüsselte SAML2 Response als XML
Beispiel einer vollständigen unverschlüsselten SAML2 Response als XML

Weiterführende Informationen

Weitere detailliertere Informationen zur Anbindung mittels SAML2 und zur Identifikation und Authentifizierung von Benutzern am ID Austria System finden sich in den Hintergrundinformationen.:

Detaillierter Prozessfluss für SAML2 Anmeldungen in Web Browser Anwendungen