Toewijzing aan het kenmerk certificateUserIds in Microsoft Entra ID
Gebruikersobjecten in Microsoft Entra-id hebben een kenmerk met de naam certificateUserIds.
- Het kenmerk certificateUserIds is multivalued en kan maximaal 5 waarden bevatten.
- Elke waarde mag niet langer zijn dan 1024 tekens.
- Elke waarde moet uniek zijn. Zodra een waarde aanwezig is in één gebruikersaccount, kan deze niet worden weggeschreven naar een ander gebruikersaccount in dezelfde Entra ID-tenant.
- De waarde hoeft niet de indeling van de e-mail-id te hebben. Het kenmerk certificateUserIds kan niet-routable user principal names (UPN's) opslaan, zoals bob@woodgrove of bob@local.
Notitie
Hoewel elke waarde uniek moet zijn in Entra-id, kunt u één certificaat toewijzen aan meerdere accounts door meerdere gebruikersnaambindingen te implementeren. Zie Meerdere gebruikersnaambindingen voor meer informatie.
Ondersteunde patronen voor certificaatgebruikers-id's
De waarden die zijn opgeslagen in certificateUserIds, moeten de indeling hebben die wordt beschreven in de volgende tabel. De X509:<Toewijzingsvoorvoegsels> zijn hoofdlettergevoelig.
Veld voor certificaattoewijzing | Voorbeelden van waarden in certificateUserIds |
---|---|
Primaire naam | X509:<PN>bob@woodgrove.com |
Primaire naam | X509:<PN>bob@woodgrove |
RFC822Name | X509:<RFC822>user@woodgrove.com |
IssuerAndSubject | X509:<I>DC=com,DC=contoso,CN=CONTOSO-DC-CA<S>DC=com,DC=contoso,OU=UserAccounts,CN=mfatest |
Onderwerp | X509:<S>DC=com,DC=contoso,OU=UserAccounts,CN=mfatest |
SKI | X509:<SKI>123456789abcdef |
SHA1PublicKey | X509:<SHA1-PUKEY>123456789abcdef |
IssuerAndSerialNumber | X509:<I>DC=com,DC=contoso,CN=CONTOSO-DC-CA<SR>b24134139f069b49997212a86ba0ef48 Als u de juiste waarde voor serienummer wilt ophalen, voert u deze opdracht uit en slaat u de waarde op die wordt weergegeven in certificateUserIds: Syntaxis: Certutil –dump –v [~certificate path~] >> [~dumpFile path~] Voorbeeld: certutil -dump -v firstusercert.cer >> firstCertDump.txt |
Rollen voor het bijwerken van certificateUserIds
Cloudgebruikers moeten ten minste de rol Privileged Authentication Beheer istrator hebben om certificateUserIds bij te werken. Cloudgebruikers kunnen het Microsoft Entra-beheercentrum of Microsoft Graph gebruiken om certificateUserIds bij te werken.
Gesynchroniseerde gebruikers moeten ten minste de rol Hybrid Identity Beheer istrator hebben om certificateUserIds bij te werken. Alleen Microsoft Entra Verbinding maken kan worden gebruikt om certificateUserIds bij te werken door de waarde van on-premises te synchroniseren.
Notitie
Active Directory-beheerders kunnen wijzigingen aanbrengen die van invloed zijn op de waarde certificateUserIds in Microsoft Entra ID voor elk gesynchroniseerd account. Beheer istrators kunnen accounts met gedelegeerde beheerdersbevoegdheden bevatten ten opzichte van gesynchroniseerde gebruikersaccounts of beheerdersrechten via de Microsoft Entra Verbinding maken-servers.
CertificateUserIds bijwerken
Gebruik de volgende stappen om certificateUserIds voor gebruikers bij te werken:
Meld u aan bij het Microsoft Entra-beheercentrum als ten minste een bevoegde verificatie Beheer istrator voor gebruikers in de cloud of als ten minste een hybride identiteit Beheer istrator voor gesynchroniseerde gebruikers.
Zoek en selecteer Alle gebruikers.
Klik op een gebruiker en klik op Eigenschappen bewerken.
Klik naast autorisatiegegevens op Weergeven.
Klik op Certificaatgebruikers-id's bewerken.
Klik op Toevoegen.
Voer de waarde in en klik op Opslaan. U kunt maximaal vier waarden optellen, elk van 120 tekens.
CertificateUserIds bijwerken met behulp van Microsoft Graph-query's
In de volgende voorbeelden ziet u hoe u Microsoft Graph gebruikt om certificateUserIds op te zoeken en bij te werken.
CertificateUserIds opzoeken
Geautoriseerde bellers kunnen Microsoft Graph-query's uitvoeren om alle gebruikers met een bepaalde certificateUserId-waarde te vinden. In het Microsoft Graph-gebruikersobject wordt de verzameling certificateUserIds opgeslagen in de eigenschap authorizationInfo.
CertificateUserIds van alle gebruikersobjecten ophalen:
GET https://graph.microsoft.com/v1.0/users?$select=authorizationinfo
ConsistencyLevel: eventual
CertificateUserIds ophalen voor een bepaalde gebruiker door de ObjectId van de gebruiker:
GET https://graph.microsoft.com/v1.0/users/{user-object-id}?$select=authorizationinfo
ConsistencyLevel: eventual
Het gebruikersobject ophalen met een specifieke waarde in certificateUserIds:
GET https://graph.microsoft.com/v1.0/users?$select=authorizationinfo&$filter=authorizationInfo/certificateUserIds/any(x:x eq 'X509:<PN>user@contoso.com')&$count=true
ConsistencyLevel: eventual
U kunt de operatoren en startsWith
de not
filtervoorwaarde ook gebruiken om aan de filtervoorwaarde te voldoen. Als u wilt filteren op het object certificateUserIds, moet de aanvraag de $count=true
querytekenreeks bevatten en moet de header ConsistencyLevel worden ingesteld op eventual
.
CertificateUserIds bijwerken
Voer een PATCH-aanvraag uit om de certificateUserIds voor een bepaalde gebruiker bij te werken.
Aanvraagtekst
PATCH https://graph.microsoft.com/v1.0/users/{user-object-id}
Content-Type: application/json
{
"authorizationInfo": {
"certificateUserIds": [
"X509:<PN>123456789098765@mil"
]
}
}
CertificateUserIds bijwerken met behulp van PowerShell-opdrachten
Voor deze configuratie kunt u Microsoft Graph PowerShell gebruiken.
Start PowerShell met beheerdersbevoegdheden.
Installeer en importeer de Microsoft Graph PowerShell SDK.
Install-Module Microsoft.Graph -Scope AllUsers Import-Module Microsoft.Graph.Authentication Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Verbinding maken aan de tenant en accepteer alles.
Connect-MGGraph -Scopes "Directory.ReadWrite.All", "User.ReadWrite.All" -TenantId <tenantId>
List certificateUserIds attribute of a given user.
$results = Invoke-MGGraphRequest -Method get -Uri 'https://graph.microsoft.com/v1.0/users/<userId>?$select=authorizationinfo' -OutputType PSObject -Headers @{'ConsistencyLevel' = 'eventual' } #list certificateUserIds $results.authorizationInfo
Maak een variabele met certificateUserIds-waarden.
#Create a new variable to prepare the change. Ensure that you list any existing values you want to keep as this operation will overwrite the existing value $params = @{ authorizationInfo = @{ certificateUserIds = @( "X509:<SKI>eec6b88788d2770a01e01775ce71f1125cd6ad0f", "X509:<PN>user@contoso.com" ) } }
Werk het kenmerk certificateUserIds bij.
$results = Invoke-MGGraphRequest -Method patch -Uri 'https://graph.microsoft.com/v1.0/users/<UserId>/?$select=authorizationinfo' -OutputType PSObject -Headers @{'ConsistencyLevel' = 'eventual' } -Body $params
CertificateUserIds bijwerken met behulp van gebruikersobject
Haal het gebruikersobject op.
$userObjectId = "6b2d3bd3-b078-4f46-ac53-f862f35e10b6" $user = Get-MgUser -UserId $userObjectId -Property AuthorizationInfo
Werk het kenmerk certificateUserIds van het gebruikersobject bij.
$user.AuthorizationInfo.certificateUserIds = @("X509:<SKI>eec6b88788d2770a01e01775ce71f1125cd6ad0f", "X509:<PN>user1@contoso.com") Update-MgUser -UserId $userObjectId -AuthorizationInfo $user.AuthorizationInfo
CertificateUserIds bijwerken met Microsoft Entra Verbinding maken
Microsoft Entra connect ondersteunt het synchroniseren van waarden met certificateUserIds vanuit een on-premises Active Directory-omgeving. On-premises Active Directory ondersteunt verificatie op basis van certificaten en meerdere gebruikersnaambindingen. Zorg ervoor dat u de nieuwste versie van Microsoft Entra Verbinding maken gebruikt.
Als u deze toewijzingsmethoden wilt gebruiken, moet u het kenmerk altSecurityIdentities van gebruikersobjecten in de on-premises Active Directory invullen. Nadat u verificatiewijzigingen op basis van certificaten hebt toegepast op Windows-domeincontrollers, zoals beschreven in KB5014754, hebt u mogelijk enkele niet-herbruikbare toewijzingsmethoden (Type=strong) geïmplementeerd om te voldoen aan de vereisten voor het afdwingen van sterke certificaten voor on-premises Active Directory.
Als u synchronisatiefouten wilt voorkomen, moet u ervoor zorgen dat de waarden die worden gesynchroniseerd een van de ondersteunde indelingen voor de certificateUserIds volgen.
Voordat u begint, moet u ervoor zorgen dat alle gebruikersaccounts die vanuit on-premises Active Directory worden gesynchroniseerd:
5 of minder waarden in de kenmerken van hun altSecurityId-entiteiten
Geen waarde met meer dan 1024 tekens
Geen dubbele waarden
Overweeg zorgvuldig of een dubbele waarde is bedoeld om één certificaat toe te wijzen aan meerdere on-premises Active Directory-accounts. Zie Meerdere gebruikersnaambindingen voor meer informatie.
Notitie
In specifieke scenario's kan een subset van gebruikers een geldige zakelijke reden hebben om één certificaat toe te wijzen aan meer dan één on-premises Active Directory-account. Bekijk deze scenario's en implementeer waar nodig afzonderlijke toewijzingsmethoden om toe te wijzen aan meer dan één account in zowel de on-premises Active Directory als de Entra-id.
Overwegingen voor continue synchronisatie van certificateUserIds
- Zorg ervoor dat het inrichtingsproces voor het invullen van de waarden in on-premises Active Directory de juiste hygiëne implementeert. Alleen waarden die zijn gekoppeld aan huidige geldige certificaten, worden ingevuld.
- Waarden worden verwijderd wanneer het bijbehorende certificaat is verlopen of ingetrokken.
- Waarden die groter zijn dan 1024 tekens, worden niet ingevuld.
- Dubbele waarden worden niet ingericht.
- Gebruik Microsoft Entra Verbinding maken Health om synchronisatie te controleren.
Volg deze stappen om Microsoft Entra-Verbinding maken te configureren om userPrincipalName te synchroniseren met certificateUserIds:
Zoek en start op de Microsoft Entra Verbinding maken-server de editor voor synchronisatieregels.
Klik op Richting en klik op Uitgaand.
Zoek de regel naar Microsoft Entra ID – Gebruikersidentiteit, klik op Bewerken en klik op Ja om te bevestigen.
Voer een hoog getal in het veld Prioriteit in en klik vervolgens op Volgende.
Klik op Transformaties>toevoegen transformatie. Mogelijk moet u omlaag schuiven in de lijst met transformaties voordat u een nieuwe kunt maken.
X509:<PN>PrincipalNameValue synchroniseren
Als u X509:<PN>PrincipalNameValue wilt synchroniseren, maakt u een regel voor uitgaande synchronisatie en kiest u Expressie in het stroomtype. Kies het doelkenmerk als certificateUserIds en voeg in het bronveld de volgende expressie toe. Als uw bronkenmerk niet userPrincipalName is, kunt u de expressie dienovereenkomstig wijzigen.
"X509:<PN>"&[userPrincipalName]
X509:<RFC822>RFC822Name synchroniseren
Als u X509:<RFC822>RFC822Name wilt synchroniseren, maakt u een regel voor uitgaande synchronisatie en kiest u Expressie in het stroomtype. Kies het doelkenmerk als certificateUserIds en voeg in het bronveld de volgende expressie toe. Als uw bronkenmerk niet userPrincipalName is, kunt u de expressie dienovereenkomstig wijzigen.
"X509:<RFC822>"&[userPrincipalName]
Klik op Doelkenmerk, selecteer certificateUserIds, klik op Bron, selecteer userPrincipalName en klik vervolgens op Opslaan.
Klik op OK om te bevestigen.
Belangrijk
In de voorgaande voorbeelden wordt userPrincipalName atribute gebruikt als bronkenmerk in de transformatieregel. U kunt elk beschikbaar kenmerk met de juiste waarde gebruiken. Sommige organisaties gebruiken bijvoorbeeld het e-mailkenmerk. Zie Microsoft Entra Verbinding maken Sync voor complexere transformatieregels: Informatie over declaratieve inrichtingsexpressies
Het kenmerk altSecurityIdentities van Active Directory synchroniseren met Microsoft Entra ID certificateUserIds
Het kenmerk altSecurityIdentities maakt geen deel uit van de standaardkenmerkenset. Een beheerder moet een nieuw kenmerk toevoegen aan het persoonsobject in de Metaverse en vervolgens de juiste synchronisatieregels maken om deze gegevens door te sturen naar certificateUserIds in Entra-id.
Open Metaverse Designer en selecteer het persoonsobject. Als u het kenmerk alternativeSecurityId wilt maken, klikt u op Nieuw kenmerk. Selecteer Tekenreeks (niet-indexeerbaar) om een kenmerkgrootte van maximaal 1024 tekens te maken. Dit is de maximale ondersteunde lengte voor certificateUserIds. Als u Tekenreeks (indexeerbaar) selecteert, is de maximale grootte van een kenmerkwaarde 448 tekens. Zorg ervoor dat u Meerdere waarden selecteert.
Open Metaverse Designer en selecteer alternativeSecurityId om deze toe te voegen aan het persoonsobject.
Maak een regel voor binnenkomende synchronisatie om te transformeren van altSecurityId-entiteiten naar het kenmerk alternativeSecurityId.
Gebruik de volgende opties in de regel voor inkomend verkeer.
Optie Weergegeven als Naam Beschrijvende naam van de regel, zoals: In vanuit Active Directory - altSecurityIdentities Verbinding maken ed System Uw on-premises Active Directory-domein Verbinding maken ed systeemobjecttype Gebruiker Metaverse-objecttype persoon Prioriteit Kies een getal onder de 100 dat momenteel niet wordt gebruikt Klik vervolgens op Transformaties en maak een directe toewijzing aan het doelkenmerk alternativeSecurityId op basis van de altSecurityId-entiteiten van het bronkenmerk, zoals wordt weergegeven in de volgende schermopname.
Maak een uitgaande synchronisatieregel om te transformeren van het kenmerk alternativeSecurityId naar het kenmerk certificateUserIds in Entra ID.
Optie Weergegeven als Naam Beschrijvende naam van de regel, zoals: Out to Microsoft Entra ID - certificateUserIds Verbinding maken ed System Uw Microsoft Entra-domein Verbinding maken ed systeemobjecttype Gebruiker Metaverse-objecttype persoon Prioriteit Kies een hoog getal dat momenteel niet wordt gebruikt boven alle standaardregels, zoals 150 Klik vervolgens op Transformaties en maak een directe toewijzing aan het doelkenmerk certificateUserIds van het bronkenmerk alternativeSecurityId, zoals wordt weergegeven in de volgende schermopname.
Voer de synchronisatie uit om gegevens te vullen met het kenmerk certificateUserIds.
Bekijk de autorisatiegegevens van een gebruiker in Entra-id om te controleren of deze is geslaagd.
Als u een subset met waarden wilt toewijzen van het kenmerk altSecurityIdentities, vervangt u de transformatie in stap 4 door een expressie. Als u een expressie wilt gebruiken, gaat u naar het tabblad Transformaties en wijzigt u de optie FlowType in Expressie, het doelkenmerk in certificateUserIds en voert u de expressie vervolgens in het veld Bron in. In het volgende voorbeeld worden alleen waarden gefilterd die zijn uitgelijnd op de velden SKI- en SHA1PublicKey-certificaattoewijzing:
Expressiecode:
IIF(IsPresent([alternativeSecurityId]),
Where($item,[alternativeSecurityId],BitOr(InStr($item, "X509:<SKI>"),InStr($item, "X509:<SHA1-PUKEY>"))>0),[alternativeSecurityId]
)
Beheer istrators kunnen waarden filteren van altSecurityId-entiteiten die overeenkomen met de ondersteunde patronen. Zorg ervoor dat de CBA-configuratie is bijgewerkt ter ondersteuning van de gebruikersnaambindingen die worden gesynchroniseerd met certificateUserIds om verificatie met behulp van deze waarden in te schakelen.
Volgende stappen
- Overzicht van Microsoft Entra CBA
- Technische diepgaande informatie voor Microsoft Entra CBA
- Microsoft Entra CBA configureren
- Microsoft Entra CBA op iOS-apparaten
- Microsoft Entra CBA op Android-apparaten
- Windows-smartcardaanmelding met Microsoft Entra CBA
- Federatieve gebruikers migreren
- Veelgestelde vragen