Transformation von Attributen

Peter Schober peter.schober at univie.ac.at
Do Jul 6 16:23:25 CEST 2017


* Krinetzki, Stephan <Krinetzki at itc.rwth-aachen.de> [2017-07-06 14:50]:
> SP 1: voller Wert
> personalnummer=1234576:eintrittsdatum=01012017:enddatum=31122017:verhältnis=wbes
[...]
> SP 2: Teil des Wertes personalnummer=1234576:verhältnis=wbes

nur zu diesem punkt:

> 2.       Parsen des Attributwerts im Attribute-Resolver => komplexe
> if-else-Strukturen bei mehr als 110 Serviceprovidern

am rande: ich kann mir nicht vorstellen, dass es 110 SPs gibt, die
darauf bestehen, sich die benoetigten daten aus einem komplexen
attribute programmatisch herauszugreifen (und alle daten aus diesem
use-case in genau dieser form brauchen; also nicht einfach mit einem
filter auf eduPersonScopedAffiliation=member o.ae. auskommen), aber
lassen wir das einmal beiseite.

wenn die strukturierten attributwerte (bzw. name=value paare) in ihrer
zahl insgesamt beschraenkt (und weiters evtl nicht alle permutationen
davon sinnvoll) sind, muss man das ja nicht pro SP in ein eigenes
attribut bauen, sondern sich nur pro sinnvoller selektion/permutation,
die man weitergeben koennen will, ein attribut bauen. das koennten
ganz wenige sein, z.B:
attributdefinition1: id="pers_full" enthaelt den wert 1:1 (bsp. "SP 1" oben)
attributdefinition2: id="pers_sel1" enthaelt die selektion bsp. "SP 2" oben
attributdefinition3: id="pers_sel2" enthaelt eine weitere sinnvolle selektion
usw.

sind die name=value paare nicht in in ihrer anzahl dynamisch, sollte
man mit einer regexsplit defition auskommen:
https://wiki.shibboleth.net/confluence/display/IDP30/RegexpSplitAttributeDefinition
(anderenfalls muss wohl ein script her)

im attribute filter wird dann pro SP nur jeweils das gewuenschte
attribute weitergegeben ("pers_full" an SP 1, "pers_sel2" an SP 2,
etc.).
das sind bei 110 SPs immer noch eine menge (naemlich 110)
entscheidungen und konfiguirationseintraege, aber evtl kann man diese
ja aus anderen informationen automatisieren (Entity Attributes,
InEntityGroup, etc.).

-peter


Mehr Informationen über die Mailingliste Aai-users