Im nachfolgenden Beispiel werden die vom IdP gelieferten
Attribute auf Standardnamen gemappt und die Benutzer über das
Attribute role
in Gruppen eingeteilt:
MAP SAML_ATTRIBUTE_MAPPER Rolle => role Name => name Vorname => firstname Mail => email END_MAP MAP SAML_GROUPS ! by role Benutzer => user Administrator => admin DEFAULT => user END_MAP ! saml.lib MUSS immer eingebunden werden !!! |INCL \script\saml.lib 'saml_' . SAML_ATTRIBUTES.role . '.usr' => VAR.TEMPLATE_USER IF OPT.user_dir . '\users\' . VAR.TEMPLATE_USER SERIAL.LOAD_OBJECT THEN => VAR.USER &VAR.USER 'order.name1' SAML_ATTRIBUTES.firstname . ' ' . SAML_ATTRIBUTES.name MAPINS &VAR.USER 'order.email' SAML_ATTRIBUTES.email MAPINS OPT.output &VAR.USER SERIAL.SAVE_OBJECT ELSE 'Der Template Benutzer ' . VAR.TEMPLATE_USER . ' existiert nicht' => VAR.MESSAGE VAR.MESSAGE SAML_APPEND_LOG VAR.MESSAGE SAML_SEND_ERROR END_IF
Folgende Bemerkungen zum Skript:
Über die Map SAML_ATTRIBUTE_MAPPER
können die vom IdP gelieferten Attributnamen vereinheitlicht
werden (z.B. Vorname =>
firstname
).
In der Map SAML_GROUPS
werden die
Benutzer via das Attribut role
in Gruppen
eingeteilt.
Der Template Benutzer wird über den Inhalt des Attributs
role
dynamisch generiert (z.B.
Administrator =>
saml_admin.usr
) .
Der aus dem Template generierte Benutzer wird mit dem
SAML Attributen firstname
,
name
und email
ergänzt.
Alle verfügbaren SAML Attribute können über die Map
SAML_ATTRIBUTES
abgefragt werden.
Von den IdP's werden nicht immer die gleichen
Benutzerattribute geliefert. Das Attribut |