KNF:ADFS-dynamische-attributen

Uit Kennisnet Developers Documentatie
Naar navigatie springen Naar zoeken springen

Entree Federatie-symbol.png Entree Federatie: ADFS-dynamische-attributen

Dynamische attributen aanmaken

In sommige gevallen is de inhoud van een attribuut afhankelijk van andere attributen. Bijvoorbeeld is de inlog van een student of van een medewerker.


nlEduPersonProfileId

  • Als de gebruiker een medewerker is, dan wordt nlEduPersonProfileId : <ObjectId>@medewerker.drenthecollege.nl
  • Als de gebruiker is deelnemer is dan wordt nlEduPersonProfileId : <EmployeeId>@student.drenthecollege.nl

Deze velden zijn niet als zodanig in LDAP beschikbaar, maar kunnen wel worden opgebouwd uit aanwezige velden.

Dynamisch gezien; nlEduPersonProfileId wordt : <sAMAccountName>@<nlEduPersonAffiliation>.drenthecollege.nl

Dit kun je op de volgende manier opbouwen:

  • We maken een attribute DC_SamId, via de add mogelijkheid.
  • We combineren een tweetal attributes (De nieuwe DC_SamId en een bestaande eduPersonAffiliation (In dit attribuut staat OF student OF employee en zijn reeds eerder gemaakt, conform de Kennisnet handleiding aangaande Entree en attributen).

Maak twee custom Claimrule Attributen aan en pas de Claimrule voor Entree aan.


Add SamId

c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Issuer == "AD AUTHORITY"]
  => add(store = "Active Directory", 
       types = ("DC_SamId"),
       query = ";sAMAccountName;{0}",
       param = c.Value);


nlEduPersonProfileId

C1:[Type == "DC_SamId"]
&& C2:[Type == "eduPersonAffiliation"]
=> issue(Type = "nlEduPersonProfileId", Value = C1.Value + "@" + C2.Value + ".drenthecollege.nl");


Binnen de bestaande Entree claimrule moet (voor onze school gegevens vanuit het AD) dan ook nog iets aangepast worden. EmployeeNumber haalt het id uit sAMAccountName dat is (op ons AD) voor student en employee het personeels- en deelnemer-nummer.

Adfs-sql-06.png


Als alles goed verlopen is krijg je op de Referentie Service Provider op de staging de volgende twee overzichten voor een student en medewerker.

Studenten inlog

Adfs-sql-07.jpg

Medewerker inlog

Adfs-sql-08.jpg

Het is niet mogelijkheid om claim rules binnen ADFS te kopiëren naar andere Relying Party Trusts. Als alles goed gaat in de staging omgeving, moeten de claims stuk voor stuk opnieuw aan gemaakt worden in de productie Trust.


Auteur: Bert Barskè| Drenthe College