...
Join/SsoSaml2 nutzt die PHP Bibliothek simplesamlphp/simplesamlphp. Sie wird über component/simplesamlphp installiert. component/simplesamlphp bringt außer dem requirement auf simplesamlphp/simplesamlphp noch Logik mit, welche das Konfigurationsdaten-Handling betrifft. Über Update-/Installationsroutine von composer werden Events ausgelöst, auf die component/simplesamlphp reagiert. Die Eventlistener erstellen in diesem Zug Symlinks von temp/cache/ in das remote-Verzeichnis von simplesamlphp/simplesamlphp. Dies ist nötig, um die von brandbox generierten Konfigurationsdateien nutzen zu können.
Beispiel
YAML, die das Mapping angibt und weitere Informationen enthält, die ein Provider braucht.
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
#Besitzt der Nutzer aus der Session eine Gruppe, die unter "sharedUser" gelistet ist, wird der Nutzer
#mit der "userMail" der Gruppe gewählt, die die höchste Priorität besitzt.
#Diese Nutzer müssen vorkonfiguriert werden. #sharedUser werden im Loginprozess nicht verändert!
sharedUser:
vertrieb:
userMail: vertrieb@example.com
priority: 1337
administrator:
userMail: administrator@example.com
priority: 69
#Wird kein sharedUser gewählt, tritt das folgende Mapping in Kraft
individualUser:
#Name des Attributs, das die E-Mail-Adresse enthält
#Ist Pflichtfeld
userMailKey: attributeMail
userMap:
#Ist Pflichtfeld
attributeMail: mail
attributeFirstName: firstName
attributeLastName: lastName
attributePhone: landLine
attributeMobile: mobile
attributeIsEditable: isEditable
group:
IT:
#Das sind die IDs der Rollen in brandbox
- 3
- 4
#Konfigurationsparameter für den ServiceProvider
config:
assertionEncryption: false |