Delen via


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 10 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 Microsoft Entra-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 Microsoft 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>aB1cD2eF3gH4iJ5kL6mN7oP8qR
SHA1PublicKey X509:<SHA1-PUKEY>cD2eF3gH4iJ5kL6mN7oP8qR9sT
IssuerAndSerialNumber X509:<I>DC=com,DC=contoso,CN=CONTOSO-DC-CA<SR>eF3gH4iJ5kL6mN7oP8qR9sT0uV
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 Administrator 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 Administrator hebben om certificateUserIds bij te werken. Alleen Microsoft Entra Connect 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. Beheerders kunnen accounts met gedelegeerde beheerdersbevoegdheden opnemen voor gesynchroniseerde gebruikersaccounts of beheerdersrechten via de Microsoft Entra Connect-servers.

CertificateUserIds bijwerken

Gebruik de volgende stappen om certificateUserIds voor gebruikers bij te werken:

  1. Meld u aan bij het Microsoft Entra-beheercentrum als ten minste een bevoegde verificatiebeheerder voor gebruikers in de cloud of als ten minste een hybride identiteitsbeheerder voor gesynchroniseerde gebruikers.

  2. Zoek en selecteer Alle gebruikers.

    Schermopname van het testgebruikersaccount.

  3. Selecteer een gebruiker en selecteer Eigenschappen bewerken.

  4. Selecteer naast Autorisatiegegevensweergeven.

    Schermopname van Autorisatiegegevens weergeven.

  5. Selecteer certificaatgebruikers-id's bewerken.

    Schermopname van certificaatgebruikers-id's bewerken.

  6. Selecteer toevoegen.

    Schermopname van het toevoegen van een certificateUserIds.

  7. Voer de waarde in en selecteer Opslaan. U kunt maximaal vier waarden optellen, elk van 120 tekens.

    Schermopname van een waarde die moet worden ingevoerd voor certificateUserIds.

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 not de startsWith 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.

  1. Start PowerShell met beheerdersbevoegdheden.

  2. 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
    
  3. Maak verbinding met de tenant en accepteer alles.

       Connect-MGGraph -Scopes "Directory.ReadWrite.All", "User.ReadWrite.All" -TenantId <tenantId>
    
  4. 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
    
  5. 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>gH4iJ5kL6mN7oP8qR9sT0uV1wX", 
                  "X509:<PN>user@contoso.com"
                  )
            }
      }
    
  6. 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

  1. Haal het gebruikersobject op.

      $userObjectId = "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb"
      $user = Get-MgUser -UserId $userObjectId -Property AuthorizationInfo
    
  2. Werk het kenmerk certificateUserIds van het gebruikersobject bij.

       $user.AuthorizationInfo.certificateUserIds = @("X509:<SKI>iJ5kL6mN7oP8qR9sT0uV1wX2yZ", "X509:<PN>user1@contoso.com") 
       Update-MgUser -UserId $userObjectId -AuthorizationInfo $user.AuthorizationInfo
    

CertificateUserIds bijwerken met Microsoft Entra Connect

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 Connect 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 de handhaving van sterke certificaatbinding 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 Microsoft 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 Connect Health om synchronisatie te bewaken.

Volg deze stappen om Microsoft Entra Connect te configureren om userPrincipalName te synchroniseren met certificateUserIds:

  1. Zoek en start op de Microsoft Entra Connect-server de editor voor synchronisatieregels.

  2. Selecteer Richtingen selecteer Uitgaande.

    Schermopname van regel voor uitgaande synchronisatie.

  3. Zoek de regel Uit naar Microsoft Entra ID – Gebruikersidentiteit, selecteer Bewerkenen selecteer Ja om bevestiging te geven.

    Schermopname van de gebruikersidentiteit.

  4. Voer een hoog getal in het veld Prioriteit in en selecteer vervolgens Volgende.

    Schermopname van een prioriteitswaarde.

  5. Selecteer transformaties>Transformatie toevoegen. 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]

Schermopname van het synchroniseren van x509.

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]

Schermopname van het synchroniseren van RFC822Name.

  1. Selecteer doelkenmerk, selecteer certificateUserIds, selecteer Bron, selecteer userPrincipalNameen selecteer Opslaan.

    Schermopname van het opslaan van een regel.

  2. Selecteer OK- om te bevestigen.

Belangrijk

In de voorgaande voorbeelden wordt het kenmerk userPrincipalName 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 Connect Sync voor complexere transformatieregels : Inzicht in declaratieve inrichtingsexpressies

Zie Microsoft Entra Connect: declaratieve inrichtingsexpressies voor meer informatie over declaratieve inrichtingsexpressies.

Het kenmerk altSecurityIdentities van Active Directory synchroniseren met Microsoft Entra 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 Microsoft Entra ID.

  1. Open Metaverse Designer en selecteer het persoonsobject. Als u het kenmerk alternativeSecurityId wilt maken, selecteert u 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.

    Schermopname van het maken van een nieuw kenmerk.

  2. Open Metaverse Designer en selecteer alternativeSecurityId om deze toe te voegen aan het persoonsobject.

    Schermopname van het toevoegen van alternativeSecurityId aan het persoonsobject.

  3. 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
    Verbonden systeem Uw on-premises Active Directory-domein
    Type verbonden systeemobject Gebruiker
    Metaverse-objecttype persoon
    Prioriteit Kies een getal onder de 100 dat momenteel niet wordt gebruikt

    Selecteer vervolgens Transformaties en maak een directe toewijzing naar het doelattribuut alternativeSecurityId van het bronomattribuut altSecurityIdentities, zoals weergegeven in de volgende schermopname.

    Schermopname van het transformeren van altSecurityId-entiteiten naar het kenmerk alternateSecurityId.

  4. Maak een uitgaande synchronisatieregel om te transformeren van het kenmerk alternativeSecurityId naar het kenmerk certificateUserIds in Microsoft Entra ID.

    Optie Weergegeven als
    Naam Beschrijvende naam van de regel, zoals: Out to Microsoft Entra ID - certificateUserIds
    Verbonden systeem Uw Microsoft Entra-domein
    Type verbonden systeemobject Gebruiker
    Metaverse-objecttype persoon
    Prioriteit Kies een hoog getal dat momenteel niet wordt gebruikt boven alle standaardregels, zoals 150

    Selecteer vervolgens Transformaties en maak een directe toewijzing aan het doelkenmerk certificateUserIds vanuit het bronkenmerk alternativeSecurityId, zoals wordt weergegeven in de volgende schermopname.

    Schermopname van de regel voor uitgaande synchronisatie om te transformeren van het kenmerk alternateSecurityId naar certificateUserIds.

  5. Voer de synchronisatie uit om gegevens te vullen met het kenmerk certificateUserIds.

  6. Bekijk de autorisatiegegevens van een gebruiker in Microsoft Entra-id om te controleren of deze is geslaagd.

    Schermopname van geslaagde synchronisatie.

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:

Schermopname van een expressie.

Expressiecode:

IIF(IsPresent([alternativeSecurityId]),
                Where($item,[alternativeSecurityId],BitOr(InStr($item, "X509:<SKI>"),InStr($item, "X509:<SHA1-PUKEY>"))>0),[alternativeSecurityId]
)

Beheerders kunnen waarden filteren van altSecurityId-entiteiten die zijn afgestemd op de ondersteunde patronen. Zorg ervoor dat de CBA-configuratie wordt bijgewerkt ter ondersteuning van de gebruikersnaambindingen die zijn gesynchroniseerd met certificateUserIds en schakel verificatie in met behulp van deze waarden.

Volgende stappen