Korrekte Nutzung des Single-Sign-On, mit HiOrg-Server als Auth-Provider:
- Verweisen Sie Ihren Nutzer (per Link, oder Redirect) auf unseren Login-Screen:
https://www.hiorg-server.de/logmein.php?ov=rmk&weiter= <Ziel-URL>
[&getuserinfo= <Feldnamen>]
[&silent= <Abbruch-URL>]
- Ziel-URL: Nach erfolgreichem Login erfolgt eine Weiterleitung zu dieser URL auf Ihrem Server
Achtung: die Ziel-URL muss inkl. Protokoll vorliegen, und urlcodiert sein!
Beispiel: &weiter=http%3A%2F%2Fov-kernen.drk.de%2Fhiorglogin.php
- Feldnamen: Gewünschte Informationen zum angemeldeten Benutzer, kommagetrennte Feldnamen
Beispiel: &getuserinfo=name%2C+vorname
Mögliche Felder |
name | Nachname |
vorname | Vorname |
kuerzel | Kürzel |
gruppe | Gruppe (Summe der Gruppen-IDs) |
perms | Nutzer-Rechte |
username | Benutzername |
email | E-Mail-Adresse |
telpriv | Telefon (privat) |
teldienst | Telefon (Arbeit) |
handy | Mobiltelefon |
id | HiOrg-ID |
user_id | UserID |
- Abbruch-URL (optional): Falls keine Sitzung bei HiOrg-Server besteht, wird der Benutzer
nicht zum Login gezwungen, sondern auf diese URL zurückgeleitet.
Auch diese URL muss inkl. Protokoll vorliegen, und urlcodiert sein.
Beispiel: &weiter=http%3A%2F%2Fov-kernen.drk.de%2Fhiorglogin.php
- Validierung des Login / Anfordern der gewünschten Benutzerdaten:
Nach erfolgreichem Login wird der Benutzer wieder auf Ihren Server zurückgeleitet. Sie erhalten
dabei per GET-Variable ein "Session-Token", welches Sie zur Überprüfung des erfolgreichen Login
unmittelbar wieder an unseren Server zurückgeben müssen:
https://www.hiorg-server.de/logmein.php?token= <erhaltenes_Token>
Unser Server gibt Ihnen daraufhin ein "OK:" sowie die zuvor angeforderten Benutzerdaten zurück.
Achtung: Vertrauen Sie dem korrekten Login erst dann, wenn Sie nach dieser Prüfanfrage auch
mindestens das "OK:" erhalten haben:
if(mb_substr( $curl_data ,0,2) != "OK") die("Login fehlgeschlagen!");
Die (auf das OK: folgenden) Benutzerdaten liegen als base64-encodiertes, serialisiertes Array
vor, dieses können Sie in Ihrem PHP-Skript weiterverarbeiten mittels:
$userdata = unserialize(base64_decode(mb_substr( $curl_data , 3)));
Prüfen Sie abschließend, ob sich der Benutzer auch über den korrekten HiOrg-Server angemeldet hat:
if( $userdata["ov"] != "rmk" ) die("Falsches Organisationskürzel!");
- Nahtloser Wechsel des Users zurück zu HiOrg-Server (Single-Sign-On):
Mithilfe des zu Beginn erhaltenen Session-Token können Sie dem Benutzer innerhalb Ihrer Website einen Link
anbieten, mit dem er jederzeit wieder zurück zu HiOrg-Server wechseln kann:
https://www.hiorg-server.de/logmein.php?login=1&token= <erhaltenes_Token> [&weiter= <Ziel-URL> ]
- Ziel-URL (wenn angegeben): Innerhalb von HiOrg-Server wird dem Benutzer ein Link [Extranet] angeboten,
mit welchem er wieder zum Intranet auf Ihrem Server wechseln kann (aber bei HiOrg-Server angemeldet bleibt!)
Achtung: die Ziel-URL muss inkl. Protokoll vorliegen, und urlcodiert sein!
Beispiel: &weiter=http%3A%2F%2Fov-kernen.drk.de%2Fintranet.php%3Fsessionid%3D223344556
- Logout aus HiOrg-Server:
https://www.hiorg-server.de/logmein.php?logout=1&token= <erhaltenes_Token> [&weiter= <Ziel-URL> ]
- Ziel-URL: Nach dem Logout erfolgt eine Weiterleitung zu dieser URL auf Ihrem Server
Achtung: die Ziel-URL muss inkl. Protokoll vorliegen, und urlcodiert sein!
Beispiel: &weiter=http%3A%2F%2Fov-kernen.drk.de%2Flogout.php
Beispiel-Code auf Ihrem Server:
Fertige Plugins für externe Dienste/CMS, welche diese Schnittstelle implementieren
|