Delen via


Wanneer moet je een transformatieclaimregel gebruiken?

U kunt deze regel in Active Directory Federation Services (AD FS) gebruiken wanneer u een binnenkomend claimtype moet toewijzen aan een uitgaand claimtype en vervolgens een actie toepassen die bepaalt welke uitvoer moet plaatsvinden op basis van de waarden die afkomstig zijn van de binnenkomende claim. Wanneer u deze regel gebruikt, doorgeeft of transformeert u claims die overeenkomen met de volgende regellogica, op basis van een van de opties die u in de regel configureert, zoals beschreven in de volgende tabel.

Regeloptie Regellogica
Alle binnenkomende claims doorgeven Als het binnenkomende claimtype gelijk is aan opgegeven claimtype en de waarde gelijk is aan elke waarde, geeft u de claim door met het uitgaande claimtype gelijk aan opgegeven claimtype
Een binnenkomende claimwaarde vervangen door een andere uitgaande claimwaarde Als het binnenkomende claimtype gelijk is aan opgegeven claimtype en waarde gelijk is aan opgegeven claimwaarde, transformeert u de claim met nieuwe uitgaande claimwaarde opgegeven claimwaarde en met uitgaande claimtype opgegeven claimtype
Claims van binnenkomende e-mailachtervoegsels vervangen door een nieuw e-mailachtervoegsel Als het binnenkomende claimtype gelijk is aan opgegeven claimtype en de waarde gelijk is aan achtervoegselwaarde, transformeert u de claim met nieuwe uitgaande claimwaarde opgegeven achtervoegselwaarde en met uitgaand claimtype opgegeven claimtype

In de volgende secties vindt u een eenvoudige inleiding tot claimregels en vindt u meer informatie over het gebruik van deze regel.

Over claimregels

Een claimregel vertegenwoordigt een exemplaar van bedrijfslogica dat een binnenkomende claim neemt, er een voorwaarde op toepast (als x dan y) en een uitgaande claim produceert op basis van de voorwaardeparameters. De volgende lijst bevat belangrijke tips die u moet weten over claimregels voordat u verder leest in dit onderwerp:

  • In de beheersmodule AD FS kunnen claimregels alleen worden gemaakt met claimregelsjablonen.

  • Claimregels verwerken binnenkomende claims direct van een claimprovider (zoals Active Directory of een andere Federation Service) of uit de uitkomsten van de acceptatietransformatieregels van een claimprovider vertrouwensrelatie.

  • Claimregels worden verwerkt door de claimuitgifte-engine in chronologische volgorde binnen een bepaalde regelset. Door prioriteit in te stellen voor regels, kunt u claims die worden gegenereerd door eerdere regels in een bepaalde regelset verder verfijnen of filteren.

  • Voor claimregelsjablonen moet u altijd een binnenkomend claimtype opgeven. U kunt echter meerdere claimwaarden met hetzelfde claimtype verwerken met één regel.

Zie De rol van claimregelsvoor meer gedetailleerde informatie over claimregels en claimregelsets. Zie De rol van de claimenginevoor meer informatie over hoe regels worden verwerkt. Zie De rol van de claimpijplijnvoor meer informatie over hoe claimregelsets worden verwerkt.

Alle claimwaarden doorgeven

Wanneer u deze actie gebruikt, worden alle binnenkomende claimwaarden die zijn gekoppeld aan een opgegeven binnenkomende claimtype toegewezen aan een opgegeven uitgaande claimtype voordat ze als uitgaande claims worden verzonden naar tokens die zijn ondertekend door uw Federation Service.

Wanneer bijvoorbeeld een regel wordt ingesteld met de Alle claimwaarden doorgeven optielogica en het binnenkomende claimtype groep en het uitgaande claimtype Rol is opgegeven, worden alle binnenkomende claimwaarden die van de verlener binnenkomen afzonderlijk gekopieerd naar nieuwe uitgaande claims met het claimtype Rol.

Een claim transformeren

In AD FS, de term claims transformatie betekent het vervangen van een binnenkomende claimwaarde door een andere uitgaande claimwaarde. Het is de regel Een binnenkomende claim transformeren die deze functie mogelijk maakt. Binnen de eigenschappen van deze regel kunt u voorwaarden instellen om binnenkomende waarden te transformeren met een andere uitgaande claimwaarde op basis van het opgegeven binnenkomende claimtype.

Zoals in de volgende afbeelding wordt weergegeven, worden bijvoorbeeld alle binnenkomende claimtypen groep toegewezen aan nieuwe uitgaande claimtypen rol wanneer een regel is ingesteld met de voorwaarde om een binnenkomende waarde te vervangen door een andere uitgaande claimwaarde. In dit geval wordt de binnenkomende claimwaarde van Koper vervangen door de nieuwe uitgaande claimwaarde van Admin.

wanneer u een transformatie gebruikt

U kunt deze regel ook gebruiken om een voorwaarde toe te passen waarmee alle binnenkomende claims worden vervangen door een opgegeven e-mailachtervoegselwaarde door een nieuwe waarde. U kunt bijvoorbeeld een voorwaarde in deze regel instellen om alle claimwaarden met het achtervoegsel van sales.corp.fabrikam.com te wijzigen in fabrikam.com.

Deze regel configureren in een vertrouwensrelatie met een claimsprovider

Wanneer u een vertrouwensrelatie van een claimprovider gebruikt, kan deze regel worden geconfigureerd om binnenkomende claims van de claimprovider te transformeren in betrouwbare equivalenten. Claimtypen of claimwaarden kunnen een andere betekenis hebben in uw organisatie dan in de claimproviderorganisaties. U kunt deze regel gebruiken om de claimtypen en waarden die afkomstig zijn van de claimprovider te normaliseren, zodat hun uitgaande claimequivalenten kunnen worden begrepen door de relying party.

Deze regel configureren voor een relying party-vertrouwensrelatie

Wanneer u een relying party-vertrouwensrelatie gebruikt, kan deze regel worden geconfigureerd om claims voor de specifieke relying party te transformeren. Claimtypen of claimwaarden kunnen een andere betekenis hebben voor een specifieke relying party. Met deze regel kunt u de uitgaande claimtypen en -waarden voor één relying party wijzigen.

Hoe deze regel te maken

U maakt deze regel met behulp van de claimregeltaal of de Transformeer een binnenkomende claim regelsjabloon in de AD FS-beheer module. Deze regelsjabloon biedt de volgende configuratieopties:

  • Geef de naam van een claimregel op

  • Een specifiek binnenkomend claimtype transformeren naar een opgegeven uitgaand claimtype.

  • Alle claimwaarden doorgeven

  • Een binnenkomende claimwaarde vervangen door een andere uitgaande claimwaarde

  • Claims voor binnenkomende e-mailachtervoegsels vervangen door een nieuw e-mailachtervoegsel

Zie Een regel maken om een binnenkomende claim te transformeren in de AD FS-implementatiehandleiding voor meer instructies over het maken van deze sjabloon.

De claimregeltaal gebruiken

Als de uitgaande claim moet worden samengesteld op basis van de inhoud van meer dan één binnenkomende claim, moet u in plaats daarvan een aangepaste regel gebruiken. Als de claimwaarde van de uitgaande claim moet zijn gebaseerd op de waarde van de binnenkomende claim, maar met aanvullende inhoud, moet u in die context ook een aangepaste regel gebruiken. Zie Wanneer u een aangepaste claimregel gebruiktvoor meer informatie.

Voorbeelden van het maken van een syntaxis van een transformatieregel

Wanneer u de syntaxis van de claimregeltaal gebruikt om claims te transformeren, kunt u een eigenschap van de getransformeerde claim instellen op een nieuwe letterlijke waarde. De volgende regel wijzigt bijvoorbeeld de waarde van rolclaims van 'Administrators' in 'root' en houdt hetzelfde claimtype:

c:[type == "https://schemas.microsoft.com/ws/2008/06/identity/claims/role", value == "Administrators"]  => issue(type = c.type, value = "root");

Reguliere expressies kunnen ook worden gebruikt voor claimtransformaties. Met de volgende regel wordt bijvoorbeeld het domein van Windows-gebruikersnaamclaims ingesteld in de vorm DOMEIN\USER naar FABRIKAM.

c:[type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name"] => issue(type = c.type, value = regexreplace(c.value, "(?<domain>[^\\]+)\\(?<user>.+)", "FABRIKAM\${user}"));

Aanbevolen procedures voor het maken van aangepaste regels

Claimtransformaties kunnen selectief worden toegepast op claims die zijn geselecteerd met behulp van basisfiltermogelijkheden. Aan elk van de claimeigenschappen die worden gebruikt voor het filteren, kunnen waarden worden toegewezen, met de volgende opmerkingen:

Eigendom claimen Beschrijving
Type, Waarde, TypeWaarde Deze eigenschappen worden het vaakst gebruikt voor opdrachten. Ten minste het type en de waarde moeten worden opgegeven voor de resulterende getransformeerde claim.
Uitgevende instelling Hoewel de claimregeltaal het instellen van de verlener van een claim toestaat, is dit over het algemeen niet raadzaam. De uitgever van een claim wordt niet geserialiseerd in het token. Wanneer een token wordt ontvangen, wordt de eigenschap Issuer van alle claims ingesteld op de id van de federatieserver die het token heeft ondertekend. Het instellen van de uitgever van een claim in de regels heeft dus geen invloed op de inhoud van het token en de instelling gaat verloren zodra de claim in een token is verpakt. Het enige scenario waarin het instellen van de uitgever van een claim zinvol is, is als deze is ingesteld op een specifieke waarde in de regelset van de claimprovider, en de regelset van de relying party regels bevat die naar deze specifieke waarde verwijzen. Als de eigenschap Issuer niet expliciet is ingesteld op een waarde in een claimregel, stelt de claimuitgifte-engine deze in op 'LOCAL AUTHORITY'.
OorspronkelijkeUitgever Net als bij Issuer moet OriginalIssuer over het algemeen niet expliciet een waarde worden toegewezen. In tegenstelling tot Issuer wordt de eigenschap OriginalIssuer geserialiseerd in het token, maar de verwachting van tokengebruikers is dat deze, indien ingesteld, de id bevat van de federatieserver die oorspronkelijk een claim heeft uitgegeven.
Eigenschappen Zoals beschreven in de vorige sectie, wordt de eigenschappenreeks van een claim niet bewaard in het token, dus toewijzingen aan eigenschappen moeten alleen worden uitgevoerd als volgende lokale beleidsregels verwijzen naar de informatie die in de eigenschap opgeslagen is.

Zie De rol van de claimregeltaalvoor meer informatie over het gebruik van de claimregeltaal.