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 (Word, 477 KB)

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 folgenden URLs in signierter Form heruntergeladen werden:

Beispiel: 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:innen zu authentifizieren, muss die Anwendung einen signierten SAML2 Authentifizierungsrequest erstellen welcher über den Browser des Benutzers bzw. der Benutzerin 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. Entsprechend SAML2 Profiles Kapitel 4.1.2 Punkt 5 erfolgt die Auslieferung der SAML2 Response an den Service Provider jedoch ausschließlich mittels SAML2 POST-Binding.

Beispiel

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-Binding Spezifikation übermittelt:

Beispiel

SAMLRequest=PD94bWwgdmVyc2lvbj0iMS4w...

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.
Auswahl Authentifizierungsvariante
Abb. 1: Auswahl Authentifizierungsvariante

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

Beispiel

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

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 wird der Parameter ‚SAMLResponse‘ übermittelt:

Beispiel

SAMLResponse=PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c2...

Weiterführende Informationen

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

Detaillierter Prozessfluss für SAML2 Anmeldungen in Web Browser Anwendungen