Share via


SAML-tokenclaims aanpassen

Het Microsoft Identity Platform ondersteunt eenmalige aanmelding (SSO) met de meeste vooraf geïntegreerde toepassingen in de toepassingsgalerie en aangepaste toepassingen. Wanneer een gebruiker zich verifieert bij een toepassing via het Microsoft Identity Platform met behulp van het SAML 2.0-protocol, wordt er een token naar de toepassing verzonden. De toepassing valideert en gebruikt het token om de gebruiker te ondertekenen in plaats van om een gebruikersnaam en wachtwoord te vragen.

Deze SAML-tokens bevatten stukjes informatie over de gebruiker die claims worden genoemd. Een claim is informatie die een id-provider verstrekt over een gebruiker in het token dat deze uitgeeft voor die gebruiker. In een SAML-token worden claimgegevens doorgaans opgenomen in de SAML-kenmerkinstructie. De unieke id van de gebruiker wordt doorgaans weergegeven in het SAML-onderwerp, dat ook wel de naam-id (nameID) wordt genoemd.

Standaard geeft het Microsoft Identity Platform een SAML-token uit aan een toepassing die een claim bevat met een waarde van de gebruikersnaam van de gebruiker (ook wel de user principal name genoemd), die de gebruiker uniek kan identificeren. Het SAML-token bevat ook andere claims die het e-mailadres, de voornaam en de achternaam van de gebruiker bevatten.

Claims weergeven of bewerken

De claims weergeven of bewerken die zijn uitgegeven in het SAML-token naar de toepassing:

  1. Meld u als cloudtoepassingsbeheerder aan bij het Microsoft Entra-beheercentrum.
  2. Blader naar Bedrijfstoepassingen voor identiteitstoepassingen>>>Alle toepassingen.
  3. Selecteer de toepassing, selecteer Eenmalige aanmelding in het menu aan de linkerkant en selecteer vervolgens Bewerken in de sectie Kenmerken & Claims .

Mogelijk moet u de claims bewerken die zijn uitgegeven in het SAML-token om de volgende redenen:

  • De toepassing vereist dat de NameIdentifier of nameID claim iets anders is dan de gebruikersnaam (of user principal name).
  • De toepassing is zodanig geschreven dat een andere set claim-URI's of claimwaarden is vereist.

Bewerken nameID

De claim voor de naam-id-waarde bewerken:

  1. Open de pagina Naam id-waarde.
  2. Selecteer het kenmerk of de transformatie die u wilt toepassen op het kenmerk. U kunt desgewenst de indeling opgeven die de nameID claim moet hebben.

NameID-indeling

Als de SAML-aanvraag het element NameIDPolicy met een specifieke indeling bevat, krijgt het Microsoft Identity Platform de indeling in de aanvraag.

Als de SAML-aanvraag geen element NameIDPolicyvoor bevat, geeft het Microsoft Identity Platform de nameID indeling die u opgeeft, uit. Als er geen indeling is opgegeven, gebruikt het Microsoft Identity Platform de standaardbronindeling die is gekoppeld aan de geselecteerde claimbron. Als een transformatie resulteert in een null- of ongeldige waarde, verzendt Microsoft Entra-id een permanente pairwise-id in de nameID.

Selecteer in de vervolgkeuzelijst Naam-id-indeling kiezen een van de opties in de volgende tabel.

nameID formatteren Beschrijving
Standaard Microsoft Identity Platform maakt gebruik van de standaardbronindeling.
Hardnekkig Microsoft Identity Platform gebruikt Persistent als de nameID indeling.
E-mailadres Microsoft Identity Platform gebruikt EmailAddress als de nameID indeling.
Onbepaald Microsoft Identity Platform gebruikt Unspecified als de nameID indeling.
Gekwalificeerde Windows-domeinnaam Microsoft Identity Platform maakt gebruik van de WindowsDomainQualifiedName indeling.

nameID Tijdelijk wordt ook ondersteund, maar is niet beschikbaar in de vervolgkeuzelijst en kan niet worden geconfigureerd aan de zijde van Azure. Zie Het SAML-protocol voor eenmalige aanmelding voor meer informatie over het NameIDPolicy kenmerk.

Kenmerken

Tip

Stappen in dit artikel kunnen enigszins variëren op basis van de portal waaruit u begint.

Selecteer de gewenste bron voor de NameIdentifier claim (of nameID) . U kunt kiezen uit de opties in de volgende tabel.

Name Beschrijving
Email Het e-mailadres van de gebruiker.
userprincipalName De UPN (user Principal name) van de gebruiker.
onpremisessamaccountname De SAM-accountnaam die is gesynchroniseerd vanuit de on-premises Microsoft Entra-id.
objectid De object-id van de gebruiker in Microsoft Entra-id.
employeeid De werknemer-id van de gebruiker.
Directory extensions De directory-extensies die vanuit on-premises Active Directory zijn gesynchroniseerd met Behulp van Microsoft Entra Connect Sync.
Extension Attributes 1-15 De kenmerken van de on-premises extensie die worden gebruikt om het Microsoft Entra-schema uit te breiden.
pairwiseid De permanente vorm van gebruikers-id.

Zie de tabel met geldige id-waarden per bron verderop op deze pagina voor meer informatie over id-waarden.

Elke constante (statische) waarde kan worden toegewezen aan elke claim. Gebruik de volgende stappen om een constante waarde toe te wijzen:

  1. Selecteer op de blade Kenmerken en claims de vereiste claim die u wilt wijzigen.
  2. Voer de constante waarde zonder aanhalingstekens in het kenmerk Bron in op basis van uw organisatie en selecteer Opslaan. De constante waarde wordt weergegeven.

Extensies voor directoryschema's

U kunt ook kenmerken van mapschema-extensies configureren als niet-voorwaardelijke/voorwaardelijke kenmerken. Gebruik de volgende stappen om het kenmerk van de mapextensie voor een enkele of meerdere waarden te configureren als een claim:

  1. Selecteer op de blade Kenmerken en claims de optie Nieuwe claim toevoegen of een bestaande claim bewerken.
  2. Selecteer de brontoepassing in de toepassingskiezer waarin de extensie-eigenschap is gedefinieerd.
  3. Selecteer Toevoegen om de selectie toe te voegen aan de claims.
  4. Klik op Opslaan om de wijzigingen door te voeren.

Speciale claimtransformaties

U kunt de volgende speciale claimtransformatiefuncties gebruiken.

Functie Beschrijving
ExtractMailPrefix() Hiermee verwijdert u het domeinachtervoegsel uit het e-mailadres of de principal-naam van de gebruiker. Met deze functie wordt alleen het eerste deel van de gebruikersnaam geëxtraheerd dat wordt doorgegeven (bijvoorbeeld 'joe_smith' in plaats van joe_smith@contoso.com).
ToLower() Converteert de tekens van het geselecteerde kenmerk naar kleine letters.
ToUpper() Converteert de tekens van het geselecteerde kenmerk naar hoofdletters.

Toepassingsspecifieke claims toevoegen

Voor toevoegen van toepassingsspecifieke claims

  1. Selecteer op de blade Kenmerken en claims de optie Nieuwe claim toevoegen om de pagina Gebruikersclaims beheren te openen.
  2. Voer de naam van de claims in. De waarde hoeft niet strikt een URI-patroon te volgen, volgens de SAML-specificatie. Als u een URI-patroon nodig hebt, kunt u dat in het veld Naamruimte plaatsen.
  3. Selecteer de bron waar de claim de waarde gaat ophalen. U kunt een gebruikerskenmerk selecteren in de vervolgkeuzelijst van het bronkenmerk of een transformatie toepassen op het gebruikerskenmerk voordat u het als claim verzendt.

Een groepsclaim toevoegen

Groepsclaims worden gebruikt om autorisatiebeslissingen te nemen voor toegang tot een resource door een app of een serviceprovider. Groepsclaims toevoegen;

  1. Navigeer naar App-registraties en selecteer de app waaraan u een groepsclaim wilt toevoegen.
  2. Selecteer Groepsclaim toevoegen.
  3. Selecteer de groepstypen die u wilt opnemen in uw token. U kunt beveiligingsgroepen, adreslijstgroepen of groepen toevoegen die zijn toegewezen aan een bepaalde toepassing.
  4. Kies de waarden die u wilt opnemen in uw groepsclaim en selecteer vervolgens Toevoegen.

Transformaties voor claims

Een transformatie toepassen op een gebruikerskenmerk:

  1. Selecteer in Claim beherenTransformatie als de claimbron om de pagina Transformatie beheren te openen.
  2. Selecteer de functie in de vervolgkeuzelijst Transformatie. Afhankelijk van de geselecteerde functie geeft u parameters en een constante waarde op die u in de transformatie wilt evalueren.
  3. Selecteer de bron van het kenmerk door op het juiste keuzerondje te klikken.
  4. Selecteer de kenmerknaam in de vervolgkeuzelijst.
  5. Bron behandelen als meerdere waarden is een selectievakje dat aangeeft of de transformatie moet worden toegepast op alle waarden of alleen op de eerste. Transformaties worden standaard alleen toegepast op het eerste element in een claim met meerdere waarden door dit selectievakje in te schakelen dat deze op alle elementen wordt toegepast. Dit selectievakje is bijvoorbeeld alleen ingeschakeld voor kenmerken met meerdere waarden user.proxyaddresses.
  6. Als u meerdere transformaties wilt toepassen, selecteert u Transformatie toevoegen. U kunt maximaal twee transformaties toepassen op een claim. U kunt bijvoorbeeld eerst het e-mailvoorvoegsel extraheren van de user.mail. Maak vervolgens de tekenreeks met hoofdletters.

U kunt de volgende functies gebruiken om claims te transformeren.

Functie Beschrijving
ExtractMailPrefix() Hiermee verwijdert u het domeinachtervoegsel uit het e-mailadres of de principal-naam van de gebruiker. Met deze functie wordt alleen het eerste deel van de gebruikersnaam geëxtraheerd dat wordt doorgegeven. Bijvoorbeeld, joe_smith in plaats van joe_smith@contoso.com.
Samenvoegen() Hiermee maakt u een nieuwe waarde door twee kenmerken te koppelen. U kunt eventueel een scheidingsteken tussen de twee kenmerken gebruiken. Voor de nameID claimtransformatie heeft de functie Join() een specifiek gedrag wanneer de transformatie-invoer een domeinonderdeel heeft. Het domeinonderdeel wordt uit invoer verwijderd voordat het wordt toegevoegd met het scheidingsteken en de geselecteerde parameter. Als de invoer van de transformatie bijvoorbeeld is joe_smith@contoso.com en het scheidingsteken is @ en de parameter is fabrikam.com, resulteert deze invoercombinatie in joe_smith@fabrikam.com.
ToLowercase() Converteert de tekens van het geselecteerde kenmerk naar kleine letters.
ToUppercase() Converteert de tekens van het geselecteerde kenmerk naar hoofdletters.
Contains() Voert een kenmerk of constante uit als de invoer overeenkomt met de opgegeven waarde. Anders kunt u een andere uitvoer opgeven als er geen overeenkomst is. Als u bijvoorbeeld een claim wilt verzenden waarbij de waarde het e-mailadres van de gebruiker is als deze het domein @contoso.combevat, anders wilt u de principal-naam van de gebruiker uitvoeren. Als u deze functie wilt uitvoeren, configureert u de volgende waarden: Parameter 1(input): user.email, Value: "@contoso.com", Parameter 2 (output): user.emailen Parameter 3 (output if there's no match): user.userprincipalname.
EndWith() Voert een kenmerk of constante uit als de invoer eindigt op de opgegeven waarde. Anders kunt u een andere uitvoer opgeven als er geen overeenkomst is.
Als u bijvoorbeeld een claim wilt verzenden waarbij de waarde de werknemer-id van de gebruiker is als de werknemer-id eindigt 000, anders wilt u een extensiekenmerk uitvoeren. Als u deze functie wilt uitvoeren, configureert u de volgende waarden: Parameter 1(input): user.employeeid, Value: "000", Parameter 2 (output): user.employeeiden Parameter 3 (output if there's no match): user.extensionattribute1.
StartWith() Resulteert in een kenmerk of constante als de invoer begint met de opgegeven waarde. Anders kunt u een andere uitvoer opgeven als er geen overeenkomst is. Als u bijvoorbeeld een claim wilt verzenden waarbij de waarde de werknemer-id van de gebruiker is als het land of de regio begint US, anders wilt u een extensiekenmerk uitvoeren. Als u deze functie wilt uitvoeren, configureert u de volgende waarden: Parameter 1(input): user.country, Value: "US", Parameter 2 (output): user.employeeiden Parameter 3 (output if there's no match): user.extensionattribute1
Extract(): na afstemmen Retourneert de subtekenreeks nadat deze overeenkomt met de opgegeven waarde. Als de waarde van de invoer bijvoorbeeld is, is Finance_BSimonFinance_de overeenkomende waarde , dan is BSimonde uitvoer van de claim .
Extract(): Voordat wordt geëxtraheerd Retourneert de subtekenreeks totdat deze overeenkomt met de opgegeven waarde. Als de waarde van de invoer bijvoorbeeld is, is BSimon_US_USde overeenkomende waarde , dan is BSimonde uitvoer van de claim .
Extract(): Tussen afstemmen Retourneert de subtekenreeks totdat deze overeenkomt met de opgegeven waarde. Als de waarde van de invoer bijvoorbeeld , de eerste overeenkomende waarde is Finance_BSimon_USFinance_, is de tweede overeenkomende waarde , _USdan is BSimonde uitvoer van de claim .
ExtractAlpha(): voorvoegsel Retourneert het alfabetische voorvoegsel van de tekenreeks. Als de waarde van de invoer bijvoorbeeld is BSimon_123, wordt deze geretourneerd BSimon.
ExtractAlpha(): achtervoegsel Retourneert het alfabetische achtervoegsel van de tekenreeks. Als de waarde van de invoer bijvoorbeeld is 123_Simon, wordt deze geretourneerd Simon.
ExtractNumeric(): voorvoegsel Retourneert het alfabetische voorvoegsel van de tekenreeks. Als de waarde van de invoer bijvoorbeeld is 123_BSimon, wordt deze geretourneerd 123.
ExtractNumeric(): achtervoegsel Retourneert het numerieke achtervoegseldeel van de tekenreeks. Als de waarde van de invoer bijvoorbeeld is BSimon_123, wordt deze geretourneerd 123.
IfEmpty() Voert een kenmerk of constante uit als de invoer null of leeg is. Als u bijvoorbeeld een kenmerk wilt uitvoeren dat is opgeslagen in een extensiekenmerk als de werknemer-id voor een gebruiker leeg is. Als u deze functie wilt uitvoeren, configureert u de volgende waarden: Parameter 1(input): user.employeeid, Parameter 2 (output): user.extensionattribute1en Parameter 3 (output if there's no match): user.employeeid.
IfNotEmpty() Voert een kenmerk of constante uit als de invoer niet null of leeg is. Als u bijvoorbeeld een kenmerk wilt uitvoeren dat is opgeslagen in een extensiekenmerk als de werknemer-id voor een gebruiker niet leeg is. Als u deze functie wilt uitvoeren, configureert u de volgende waarden: Parameter 1(input): user.employeeid en Parameter 2 (output): user.extensionattribute1.
Subtekenreeks() - Vaste lengte Extraheert onderdelen van een tekenreeksclaimtype, beginnend bij het teken op de opgegeven positie en retourneert het opgegeven aantal tekens. Dit sourceClaim is de claimbron van de transformatie die moet worden uitgevoerd. Dit StartIndex is de op nul gebaseerde begintekenpositie van een subtekenreeks in dit exemplaar. Dit Length is de lengte in tekens van de subtekenreeks. Bijvoorbeeld sourceClaim - PleaseExtractThisNow, StartIndex - 6en Length - 11 produceert een uitvoer van ExtractThis.
Subtekenreeks() - EndOfString Extraheert delen van een type tekenreeksclaim, beginnend bij het teken op de opgegeven positie, en retourneert de rest van de claim uit de opgegeven startindex. Dit sourceClaim is de claimbron van de transformatie die moet worden uitgevoerd. Dit StartIndex is de op nul gebaseerde begintekenpositie van een subtekenreeks in dit exemplaar. En produceert bijvoorbeeld sourceClaim - PleaseExtractThisNow StartIndex - 6 een uitvoer van ExtractThisNow.
RegexReplace() Zie de volgende sectie voor meer informatie over op regex gebaseerde claimstransformatie.

Transformatie van claims op basis van Regex

In de volgende afbeelding ziet u een voorbeeld van het eerste niveau van transformatie:

Schermopname van het eerste niveau van transformatie.

De acties in de volgende tabel bevatten informatie over het eerste niveau van transformaties en komen overeen met de labels in de vorige afbeelding. Selecteer Bewerken om de blade claimtransformatie te openen.

Actie Veld Beschrijving
1 Transformation Selecteer de optie RegexReplace() in de transformatieopties om de op regex gebaseerde claimtransformatiemethode te gebruiken voor claimtransformatie.
2 Parameter 1 De invoer voor de reguliere expressietransformatie. Bijvoorbeeld user.mail met een e-mailadres van een gebruiker, zoals admin@fabrikam.com.
3 Treat source as multivalued Sommige gebruikerskenmerken voor invoer kunnen gebruikerskenmerken met meerdere waarden zijn. Als het geselecteerde gebruikerskenmerk meerdere waarden ondersteunt en de gebruiker meerdere waarden wil gebruiken voor de transformatie, moeten ze de bron behandelen selecteren als meerdere waarden. Indien geselecteerd, worden alle waarden gebruikt voor de regex-overeenkomst, anders wordt alleen de eerste waarde gebruikt.
4 Regex pattern Een reguliere expressie die wordt geëvalueerd op basis van de waarde van het gebruikerskenmerk dat is geselecteerd als parameter 1. Een reguliere expressie voor het extraheren van de gebruikersalias uit het e-mailadres van de gebruiker wordt bijvoorbeeld weergegeven als (?'domain'^.*?)(?i)(\@fabrikam\.com)$.
5 Add additional parameter Er kunnen meer dan één gebruikerskenmerk worden gebruikt voor de transformatie. De waarden van de kenmerken worden vervolgens samengevoegd met regex-transformatie-uitvoer. Maximaal vijf parameters worden ondersteund.
6 Replacement pattern Het vervangende patroon is de tekstsjabloon, die tijdelijke aanduidingen voor regex-resultaat bevat. Alle groepsnamen moeten in de accolades worden verpakt, zoals {group-name}. Stel dat het beheer gebruikersalias wil gebruiken met een andere domeinnaam, bijvoorbeeld xyz.com en de landnaam hiermee samenvoegen. In dit geval is {country}.{domain}@xyz.comhet vervangingspatroon, waarbij {country} de waarde van de invoerparameter is en {domain} de groepsuitvoer is van de reguliere expressie-evaluatie. In dat geval is US.swmal@xyz.comhet verwachte resultaat .

In de volgende afbeelding ziet u een voorbeeld van het tweede transformatieniveau:

Schermopname van het tweede niveau van claimtransformatie.

De volgende tabel bevat informatie over het tweede niveau van transformaties. De acties die in de tabel worden vermeld, komen overeen met de labels in de vorige afbeelding.

Actie Veld Beschrijving
1 Transformation Op Regex gebaseerde claimtransformaties zijn niet beperkt tot de eerste transformatie en kunnen ook worden gebruikt als de transformatie op het tweede niveau. Elke andere transformatiemethode kan als de eerste transformatie worden gebruikt.
2 Parameter 1 Als RegexReplace() is geselecteerd als een transformatie op het tweede niveau, wordt de uitvoer van transformatie op het eerste niveau gebruikt als invoer voor de transformatie op het tweede niveau. Als u de transformatie wilt toepassen, moet de regex-expressie op het tweede niveau overeenkomen met de uitvoer van de eerste transformatie.
3 Regex pattern Regex-patroon is de reguliere expressie voor de transformatie op het tweede niveau.
4 Parameter input Invoer van gebruikerskenmerken voor de transformaties op het tweede niveau.
5 Parameter input Beheerders kunnen de geselecteerde invoerparameter verwijderen als ze deze niet meer nodig hebben.
6 Replacement pattern Het vervangende patroon is de tekstsjabloon, die tijdelijke aanduidingen bevat voor de naam van de regex-resultaatgroep, de naam van de invoerparametergroep en de statische tekstwaarde. Alle groepsnamen moeten in de accolades worden verpakt, zoals {group-name}. Stel dat het beheer gebruikersalias wil gebruiken met een andere domeinnaam, bijvoorbeeld xyz.com en de landnaam hiermee samenvoegen. In dit geval is {country}.{domain}@xyz.comhet vervangingspatroon, waarbij {country} de waarde van de invoerparameter en {domain} de groepsuitvoer is van de reguliere expressie-evaluatie. In dat geval is US.swmal@xyz.comhet verwachte resultaat .
7 Test transformation De regexReplace() transformatie wordt alleen geëvalueerd als de waarde van het geselecteerde gebruikerskenmerk voor parameter 1 overeenkomt met de reguliere expressie die is opgegeven in het tekstvak Regex-patroon . Als deze niet overeenkomen, wordt de standaardclaimwaarde toegevoegd aan het token. Als u een reguliere expressie wilt valideren op basis van de waarde van de invoerparameter, is er een testervaring beschikbaar op de het blad Transformaties. Deze testervaring werkt alleen bij dummy-waarden. Wanneer er meer invoerparameters worden gebruikt, wordt de naam van de parameter toegevoegd aan het testresultaat in plaats van de werkelijke waarde. Selecteer Testtransformatie om toegang te krijgen tot de testsectie.

In de volgende afbeelding ziet u een voorbeeld van het testen van de transformaties:

Schermopname van het testen van de transformatie.

De volgende tabel bevat informatie over het testen van de transformaties. De acties die in de tabel worden vermeld, komen overeen met de labels in de vorige afbeelding.

Actie Veld Beschrijving
1 Test transformation Selecteer de knop Sluiten of (X) om de testsectie te verbergen en de knop Testtransformatie opnieuw weer te geven op de blade.
2 Test regex input Accepteert invoer die wordt gebruikt voor de evaluatie van de reguliere expressietest. Als op regex gebaseerde claimtransformatie is geconfigureerd als een transformatie op het tweede niveau, geeft u een waarde op die de verwachte uitvoer van de eerste transformatie is.
3 Run test Nadat de regex-invoer van de test is opgegeven en het Regex-patroon, het vervangingspatroon en de invoerparameters zijn geconfigureerd, kan de expressie worden geëvalueerd door De test uitvoeren te selecteren.
4 Test transformation result Als de evaluatie slaagt, wordt een uitvoer van de testtransformatie weergegeven op basis van het resultaatlabel Testtransformatie .
5 Remove transformation De transformatie op het tweede niveau kan worden verwijderd door transformatie verwijderen te selecteren.
6 Specify output if no match Wanneer een regex-invoerwaarde is geconfigureerd voor de parameter 1 die niet overeenkomt met de reguliere expressie, wordt de transformatie overgeslagen. In dergelijke gevallen kan het alternatieve gebruikerskenmerk worden geconfigureerd, dat wordt toegevoegd aan het token voor de claim door uitvoer opgeven te controleren als er geen overeenkomst is.
7 Parameter 3 Als een alternatief gebruikerskenmerk moet worden geretourneerd wanneer er geen overeenkomst is en uitvoer opgeven als er geen overeenkomst is ingeschakeld, kan een alternatief gebruikerskenmerk worden geselecteerd met behulp van de vervolgkeuzelijst. Deze vervolgkeuzelijst is beschikbaar voor parameter 3 (uitvoer als er geen overeenkomst is) .
8 Summary Onder aan de blade wordt een volledige samenvatting van de indeling weergegeven waarin de betekenis van de transformatie in eenvoudige tekst wordt uitgelegd.
9 Add Nadat de configuratie-instellingen voor de transformatie zijn geverifieerd, kan deze worden opgeslagen in een claimbeleid door Toevoegen te selecteren. Selecteer Opslaan op de blade Claim beheren om de wijzigingen op te slaan.

RegexReplace() transformatie is ook beschikbaar voor de transformaties van groepsclaims.

Transformatievalidaties regexReplace()

Wanneer de volgende voorwaarden optreden nadat de test Toevoegen of Uitvoeren is geselecteerd, wordt er een bericht weergegeven met meer informatie over het probleem:

  • Invoerparameters met dubbele gebruikerskenmerken zijn niet toegestaan.
  • Ongebruikte invoerparameters gevonden. Gedefinieerde invoerparameters moeten respectievelijk gebruik hebben in de tekst van het vervangende patroon.
  • De opgegeven regex-invoer voor de test komt niet overeen met de opgegeven reguliere expressie.
  • De bron voor de groepen in het vervangingspatroon is niet gevonden.

De UPN-claim toevoegen aan SAML-tokens

De http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn claim maakt deel uit van de beperkte SAML-claimset. Als u een aangepaste ondertekeningssleutel hebt geconfigureerd, kunt u deze toevoegen in de sectie Kenmerken en claims .

Als er geen aangepaste ondertekeningssleutel is geconfigureerd, raadpleegt u de samL Restricted-claimset. U kunt deze als optionele claim toevoegen via App-registraties in Azure Portal.

Open de toepassing in App-registraties, selecteer tokenconfiguratie en selecteer vervolgens Optionele claim toevoegen. Selecteer het type SAML-token , kies upn in de lijst en klik vervolgens op Toevoegen om de claim toe te voegen aan het token.

Aanpassingen die zijn uitgevoerd in de sectie Kenmerken en claims , kunnen de optionele claims in de app-registratie overschrijven.

Claims verzenden op basis van voorwaarden

U kunt de bron van een claim opgeven op basis van het gebruikerstype en de groep waarvan de gebruiker deel uitmaakt.

Het gebruikerstype kan zijn:

  • Alle gebruikers hebben toegang tot de toepassing.
  • Leden: systeemeigen lid van de tenant
  • Alle gasten: De gebruiker wordt overgebracht van een externe organisatie met of zonder Microsoft Entra-id.
  • Microsoft Entra-gasten: Gastgebruiker behoort tot een andere organisatie met behulp van Microsoft Entra-id.
  • Externe gasten: Gastgebruiker behoort tot een externe organisatie die geen Microsoft Entra-id heeft.

Een scenario waarin het gebruikerstype nuttig is, is wanneer de bron van een claim verschilt voor een gast en een werknemer die toegang heeft tot een toepassing. U kunt opgeven dat als de gebruiker een werknemer is, de NameID afkomstig is van user.email. Als de gebruiker een gast is, wordt de NameID afkomstig van user.extensionattribute1.

Een claimvoorwaarde toevoegen:

  1. Vouw in Claim beheren de claimvoorwaarden uit.
  2. Selecteer het gebruikerstype.
  3. Selecteer de groep(en) waartoe de gebruiker behoort. U kunt maximaal 50 unieke groepen selecteren voor alle claims voor een bepaalde toepassing.
  4. Selecteer de bron waar de claim de waarde gaat ophalen. U kunt een gebruikerskenmerk selecteren in de vervolgkeuzelijst voor het bronkenmerk of een transformatie toepassen op het gebruikerskenmerk. U kunt ook een mapschema-extensie selecteren voordat u deze als claim verzendt.

De volgorde waarin u de voorwaarden toevoegt, zijn belangrijk. Microsoft Entra evalueert eerst alle voorwaarden met bron Attribute en evalueert vervolgens alle voorwaarden met de bron Transformation om te bepalen welke waarde in de claim moet worden verzonden. Voorwaarden met dezelfde bron worden van boven naar beneden geëvalueerd. De laatste waarde, die overeenkomt met de expressie, wordt verzonden in de claim. Transformaties zoals IsNotEmpty en Contains fungeren als beperkingen.

Bijvoorbeeld: Britta Simon is een gastgebruiker in de Contoso-tenant. Britta behoort tot een andere organisatie die ook gebruikmaakt van Microsoft Entra ID. Gezien de volgende configuratie voor de Fabrikam-toepassing, evalueert het Microsoft Identity Platform de voorwaarden wanneer Britta zich probeert aan te melden bij Fabrikam.

Eerst controleert het Microsoft Identity Platform of het gebruikerstype van Britta Alle gasten is. Omdat het type Alle gasten is, wijst het Microsoft Identity Platform de bron voor de claim toe aanuser.extensionattribute1. Ten tweede controleert het Microsoft Identity Platform of het gebruikerstype van Britta Microsoft Entra-gasten is. Omdat het type Alle gasten is, wijst het Microsoft Identity Platform de bron voor de claim toe aanuser.mail. Ten slotte wordt de claim verzonden met een waarde voor user.mail Britta.

Een ander voorbeeld is wanneer Britta Simon zich probeert aan te melden en de volgende configuratie wordt gebruikt. Alle voorwaarden worden eerst geëvalueerd met de bron van Attribute. Omdat het gebruikerstype van Britta Microsoft Entra-gasten is, user.mail wordt deze toegewezen als de bron voor de claim. Vervolgens worden de transformaties geëvalueerd. Omdat Britta een gast is, is user.extensionattribute1 nu de nieuwe bron voor de claim. Omdat Britta zich in Microsoft Entra-gasten bevindt, user.othermail is dit nu de bron voor deze claim. Ten slotte wordt de claim verzonden met een waarde voor user.othermail Britta.

Bekijk als laatste voorbeeld wat er gebeurt als Britta geen user.othermail configuratie heeft of leeg is. In beide gevallen wordt de vermelding van de voorwaarde genegeerd en valt de claim terug in user.extensionattribute1 plaats daarvan.

Geavanceerde OPTIES voor SAML-claims

Geavanceerde claimopties kunnen worden geconfigureerd voor SAML2.0-toepassingen om dezelfde claim beschikbaar te maken voor OIDC-tokens en omgekeerd voor toepassingen die dezelfde claim willen gebruiken voor zowel SAML2.0- als OIDC-antwoordtokens.

Geavanceerde claimopties kunnen worden geconfigureerd door het selectievakje onder Geavanceerde SAML-claimsopties in de blade Claims beheren in te schakelen.

De volgende tabel bevat andere geavanceerde opties die kunnen worden geconfigureerd voor een toepassing.

Optie Omschrijving
Toepassings-id toevoegen aan verlener Voegt automatisch de toepassings-id toe aan de claim van de verlener. Deze optie zorgt voor een unieke claimwaarde voor elk exemplaar wanneer er meerdere exemplaren van dezelfde toepassing zijn. Deze instelling wordt genegeerd als een aangepaste ondertekeningssleutel niet is geconfigureerd voor de toepassing.
Claim van doelgroep overschrijven Hiermee kan de claim van de doelgroep worden overschreven die naar de toepassing is verzonden. De opgegeven waarde moet een geldige absolute URI zijn. Deze instelling wordt genegeerd als een aangepaste ondertekeningssleutel niet is geconfigureerd voor de toepassing.
Indeling van kenmerknaam opnemen Als deze optie is geselecteerd, voegt Microsoft Entra ID een kenmerk NameFormat toe dat de indeling van de naam beschrijft voor beperkte, kern- en optionele claims voor de toepassing. Raadpleeg Type claimtoewijzingsbeleid voor meer informatie.