YAML, die das Mapping angibt und weitere Informationen enthält, die ein Provider braucht.Wurde ein Nutzer über SSO authentifiziert, können die vom IdP übermittelten Daten auf die in brandbox vorhandenen Nutzer gemappt werden. Das Mapping wird in der Konfiguration des Providers festgelegt.
Es besteht die Möglichkeit die Antwort des IdP auf einen individuellen Nutzer zu mappen, oder einen geteilten Nutzer zu nutzen. Ein individueller Nutzer wird zunächst auf einen generischen Nutzer gemappt, der wiederum auf eine spezifische Nutzerentität gemappt wird. Der spezifische Typ der Entität wird in der Konifguration des Providers festgelegt. Der generische Nutzer besitzt folgende Eigenschaften.
Bezeichnung | Attributname | Beschreibung |
---|---|---|
E-Mail Adresse | E-Mail Adresse des Nutzers. | |
Vorname | firstName | Vorname des Nutzers. |
Nachname | lastName | Nachname des Nutzers. |
Geburtstag | birthday | Geburtstag des Nutzers. |
Telefon | landline | Telefonnummer des Nutzers. |
Mobil | mobile | Mobilnummer des Nutzers. |
Stadt | city | Stadt (Wohnort) des Nutzers. |
Land | country | Land (Wohnort) des Nutzers. |
Unternehmen | company | Unternehmen des Nutzers. |
Abteilung | department | Abteilung des Nutzers. |
Das Mapping der Eigenschaften des genericUser-Objekts auf die spezifischen Nutzerentitäten unterliegt den entsprechenden Paketen. Es ist möglich, dass nicht alle Werte gemappt werden.
Der individuelle Nutzer wird anhand der E-Mail Adresse der Antwort gewählt. Das Attribut für die E-Mal Adresse in der Antwort muss über den Eintrag userMailKey in der Map für den individuellen Nutzer festgelegt werden. Im Eintrag userMap wird über Key-Value-Paare das Mapping der Attribute der Antwort festgelegt. Die Keys sind dabei die Namen der Attribute aus der Antwort des IdP, die Werte sind die Namen der Attribute des genericUser-Objekts.
Der geteilte Nutzer wird anhand der Nutzergruppe der Antwort bestimmt. Das Attribut für die Nutzergruppe in der Antwort muss über den Eintrag userGroupKey in der Map des individuellen Nutzers festgelegt werden. Ist eine Nutzergruppe vorhanden, wird in der Map der geteilten Nutzer nach dieser Gruppe gesucht und der entsprechende Nutzer ausgewählt. Beim Mapping der Rollen ist es wichtig darauf zu achten, dass der Nutzer Rollen besitzt, die ihm den Login für den entsprechenden Endpunkt emöglichen und darüber hinaus auch für den SSO Endpunkt.
JSON Konfiguration
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
{ "sharedUser": { "vertriebsales": { "userMail": "vertrieb@examplesales@example.com", "priority": 1337 }, "it": { "administrator"userMail": "it@example.com", "priority": 300 }, "administration": { "userMail": "administrator@example.com", "priority": 69100 } }, "individualUser": { "userMailKey": "attributeMail", "userMap": { "attributeMail": "mail", "attributeFirstName": "firstName", "attributeLastName": "lastName", "attributePhone": "landLine", "attributeMobile": "mobile", "attributeIsEditable": "isEditable" }, "groupuserGroupKey": { "group", "ITgroup": [{ "it": { 3, "0": 4304 ]} } }, "config": { "assertionEncryption": false } } | ||||||
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 |