Share via


Microsoft Entra Id'de certificateUserIds özniteliğine eşleme

Microsoft Entra Id'deki kullanıcı nesnelerinin certificateUserIds adlı bir özniteliği vardır.

  • certificateUserIds özniteliği çok değerlidir ve en fazla 5 değer barındırabilir.
  • Her değer en fazla 1024 karakter olabilir.
  • Her değer benzersiz olmalıdır. Bir kullanıcı hesabında bir değer mevcut olduğunda, aynı Entra Id kiracısında başka bir kullanıcı hesabına yazılamaz.
  • Değerin e-posta kimliği biçiminde olması gerekmez. certificateUserIds özniteliği, bob@woodgrove veya bob@local gibi yönlendirilemez kullanıcı asıl adlarını (UPN) depolayabilir.

Not

Her değerin Entra Id içinde benzersiz olması gerekse de, birden çok kullanıcı adı bağlaması uygulayarak tek bir sertifikayı birden çok hesapla eşleyebilirsiniz. Daha fazla bilgi için bkz . Birden çok kullanıcı adı bağlaması.

Sertifika kullanıcı kimlikleri için desteklenen desenler

certificateUserIds içinde depolanan değerler aşağıdaki tabloda açıklanan biçimde olmalıdır. X509:<Eşleme> ön ekleri büyük/küçük harfe duyarlıdır.

Sertifika eşleme Alanı certificateUserIds içindeki değer örnekleri
AsılAd X509:<PN>bob@woodgrove.com
AsılAd X509:<PN>bob@woodgrove
RFC822Name X509:<RFC822>user@woodgrove.com
VerenAndSubject X509:<I>DC=com,DC=contoso,CN=CONTOSO-DC-CA<S>DC=com,DC=contoso,OU=UserAccounts,CN=mfatest
Konu X509:<S>DC=com,DC=contoso,OU=UserAccounts,CN=mfatest
KAYAK X509:<SKI>123456789abcdef
SHA1PublicKey X509:<SHA1-PUKEY>123456789abcdef
IssuerAndSerialNumber X509:<I>DC=com,DC=contoso,CN=CONTOSO-DC-CA<SR>b24134139f069b49997212a86ba0ef48
Seri numarası için doğru değeri almak için şu komutu çalıştırın ve certificateUserIds içinde gösterilen değeri depolayın:
Söz dizimi:
Certutil –dump –v [~certificate path~] >> [~dumpFile path~]
Örnek:
certutil -dump -v firstusercert.cer >> firstCertDump.txt

CertificateUserIds güncelleştirme rolleri

CertificateUserIds'i güncelleştirmek için yalnızca bulut kullanıcıları en az Privileged Authentication Yönetici istrator rolüne sahip olmalıdır. Yalnızca bulut kullanıcıları, certificateUserId'leri güncelleştirmek için Microsoft Entra yönetim merkezini veya Microsoft Graph'ı kullanabilir.

Eşitlenen kullanıcıların certificateUserIds'yi güncelleştirmek için en az Karma Kimlik Yönetici istrator rolüne sahip olması gerekir. Değeri şirket içinden eşitleyerek certificateUserIds'i güncelleştirmek için yalnızca Microsoft Entra Bağlan kullanılabilir.

Not

Active Directory yöneticileri, eşitlenen herhangi bir hesap için Microsoft Entra Id'deki certificateUserIds değerini etkileyen değişiklikler yapabilir. Yönetici istrator'lar eşitlenmiş kullanıcı hesapları üzerinden yönetici yetkisine sahip hesapları veya Microsoft Entra Bağlan sunucuları üzerinde yönetim haklarını içerebilir.

CertificateUserIds'i güncelleştirme

Kullanıcılar için certificateUserIds'i güncelleştirmek için aşağıdaki adımları kullanın:

  1. Microsoft Entra yönetim merkezinde yalnızca bulut kullanıcıları için en az Privileged Authentication Yönetici istrator olarak veya eşitlenmiş kullanıcılar için en az Karma Kimlik Yönetici leyici olarak oturum açın.

  2. Tüm kullanıcılar'ı arayın ve seçin.

    Test kullanıcı hesabının ekran görüntüsü.

  3. Bir kullanıcıya tıklayın ve Özellikleri Düzenle'ye tıklayın.

  4. Yetkilendirme bilgileri'nin yanındaki Görünüm'e tıklayın.

    Yetkilendirme bilgilerini görüntüle'nin ekran görüntüsü.

  5. Sertifika kullanıcı kimliklerini düzenle'ye tıklayın.

    Sertifika kullanıcı kimliklerini düzenle'nin ekran görüntüsü.

  6. Ekle'yi tıklatın.

    CertificateUserIds ekleme ekran görüntüsü.

  7. Değeri girin ve Kaydet'e tıklayın. Her biri 120 karakterden oluşan en çok dört değer ekleyebilirsiniz.

    certificateUserIds için girilir bir değerin ekran görüntüsü.

Microsoft Graph sorgularını kullanarak certificateUserIds'i güncelleştirme

Aşağıdaki örneklerde, certificateUserId'leri aramak ve güncelleştirmek için Microsoft Graph'ın nasıl kullanılacağı gösterilmektedir.

CertificateUserIds arama

Yetkili arayanlar, belirli bir certificateUserId değerine sahip tüm kullanıcıları bulmak için Microsoft Graph sorguları çalıştırabilir. Microsoft Graph kullanıcı nesnesinde certificateUserIds koleksiyonu authorizationInfo özelliğinde depolanır.

Tüm kullanıcı nesnelerinin certificateUserId değerlerini almak için:

GET https://graph.microsoft.com/v1.0/users?$select=authorizationinfo
ConsistencyLevel: eventual

Kullanıcının ObjectId değerine göre belirli bir kullanıcının certificateUserId değerlerini almak için:

GET https://graph.microsoft.com/v1.0/users/{user-object-id}?$select=authorizationinfo
ConsistencyLevel: eventual

certificateUserIds içinde belirli bir değere sahip kullanıcı nesnesini almak için:

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

Filtre koşuluyla not eşleştirmek için ve startsWith işleçlerini de kullanabilirsiniz. certificateUserIds nesnesine göre filtrelemek için isteğin $count=true sorgu dizesini içermesi ve ConsistencyLevel üst bilgisinin olarak eventualayarlanması gerekir.

CertificateUserIds'i güncelleştirme

Belirli bir kullanıcının certificateUserId'lerini güncelleştirmek için bir PATCH isteği çalıştırın.

Request body

PATCH https://graph.microsoft.com/v1.0/users/{user-object-id}
Content-Type: application/json
{
    "authorizationInfo": {
        "certificateUserIds": [
            "X509:<PN>123456789098765@mil"
        ]
    }
}

PowerShell komutlarını kullanarak certificateUserIds güncelleştirme

Bu yapılandırma için Microsoft Graph PowerShell'i kullanabilirsiniz.

  1. PowerShell'i yönetici ayrıcalıklarıyla başlatın.

  2. Microsoft Graph PowerShell SDK'sını yükleyin ve içeri aktarın.

        Install-Module Microsoft.Graph -Scope AllUsers
        Import-Module Microsoft.Graph.Authentication
        Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
    
  3. Kiracıya Bağlan ve tümünü kabul edin.

       Connect-MGGraph -Scopes "Directory.ReadWrite.All", "User.ReadWrite.All" -TenantId <tenantId>
    
  4. Belirli bir kullanıcının certificateUserIds özniteliğini listeleyin.

      $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. certificateUserIds değerleriyle bir değişken oluşturun.

      #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"
                  )
            }
      }
    
  6. certificateUserIds özniteliğini güncelleştirin.

       $results = Invoke-MGGraphRequest -Method patch -Uri 'https://graph.microsoft.com/v1.0/users/<UserId>/?$select=authorizationinfo' -OutputType PSObject -Headers @{'ConsistencyLevel' = 'eventual' } -Body $params
    

Kullanıcı nesnesini kullanarak certificateUserIds'i güncelleştirme

  1. Kullanıcı nesnesini alın.

      $userObjectId = "6b2d3bd3-b078-4f46-ac53-f862f35e10b6"
      $user = Get-MgUser -UserId $userObjectId -Property AuthorizationInfo
    
  2. Kullanıcı nesnesinin certificateUserIds özniteliğini güncelleştirin.

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

Microsoft Entra Bağlan kullanarak certificateUserIds'i güncelleştirme

Microsoft Entra connect, değerleri şirket içi Active Directory bir ortamdan certificateUserIds ile eşitlemeyi destekler. Şirket içi Active Directory, sertifika tabanlı kimlik doğrulamayı ve birden çok kullanıcı adı bağlamayı destekler. Microsoft Entra Bağlan'nin en son sürümünü kullandığınızdan emin olun.

Bu eşleme yöntemlerini kullanmak için şirket içi Active Directory kullanıcı nesnelerinin altSecurityIdentities özniteliğini doldurmanız gerekir. Ayrıca, KB5014754'de açıklandığı gibi Windows etki alanı denetleyicilerine sertifika tabanlı kimlik doğrulaması değişiklikleri uyguladıktan sonra, şirket içi Active Directory güçlü sertifika bağlama zorlama gereksinimlerini karşılamak için yeniden kullanılamayan eşleme yöntemlerinden bazılarını (Type=strong) uygulamış olabilirsiniz.

Eşitleme hatalarını önlemek için eşitlenen değerlerin certificateUserIds için desteklenen biçimlerden birini izlediğinden emin olun.

Başlamadan önce, şirket içi Active Directory eşitlenen tüm kullanıcı hesaplarında şunlar olduğundan emin olun:

  • altSecurityIdentities özniteliklerinde 5 veya daha az değer

  • 1024 karakterden daha fazla karakter içeren değer yok

  • Yinelenen değer yok

    Yinelenen bir değerin tek bir sertifikayı birden çok şirket içi Active Directory hesabıyla eşlemek için tasarılıp tasarlanmamış olduğunu dikkatle göz önünde bulundurun. Daha fazla bilgi için bkz . Birden çok kullanıcı adı bağlaması.

    Not

    Belirli senaryolarda, kullanıcıların bir alt kümesinin tek bir sertifikayı birden fazla şirket içi Active Directory hesaba eşlemek için geçerli bir iş gerekçesi olabilir. Bu senaryoları gözden geçirin ve gerektiğinde, hem şirket içi Active Directory hem de Entra Kimliği'nde daha sonra bir hesapla eşlemek için ayrı eşleme yöntemleri uygulayın.

CertificateUserIds'in sürekli eşitlenmesiyle ilgili dikkat edilmesi gerekenler

  • şirket içi Active Directory değerleri doldurmaya yönelik sağlama işleminin düzgün hijyen sağladığından emin olun. Yalnızca geçerli sertifikalarla ilişkili değerler doldurulur.
  • Karşılık gelen sertifikanın süresi dolduğunda veya iptal edildiğinde değerler kaldırılır.
  • 1024 karakterden büyük değerler doldurulmuyor.
  • Yinelenen değerler sağlanmamıştır.
  • Eşitlemeyi izlemek için Microsoft Entra Bağlan Health kullanın.

UserPrincipalName öğesini certificateUserIds ile eşitlemek üzere Microsoft Entra Bağlan yapılandırmak için şu adımları izleyin:

  1. Microsoft Entra Bağlan sunucusunda Eşitleme Kuralları Düzenleyicisi'ni bulun ve başlatın.

  2. Yön'e ve giden'e tıklayın.

    Giden eşitleme kuralının ekran görüntüsü.

  3. Out to Microsoft Entra ID – User Identity kuralını bulun, Düzenle'ye tıklayın ve onaylamak için Evet'e tıklayın.

    Kullanıcı kimliğinin ekran görüntüsü.

  4. Öncelik alanına yüksek bir sayı girin ve İleri'ye tıklayın.

    Öncelik değerinin ekran görüntüsü.

  5. Dönüşümler>Dönüştürme ekle'ye tıklayın. Yeni bir dönüşüm oluşturabilmek için önce dönüşümler listesini aşağı kaydırmanız gerekebilir.

X509:<PN>PrincipalNameValue Değerini Eşitle

X509:<PN>PrincipalNameValue değerini eşitlemek için bir giden eşitleme kuralı oluşturun ve akış türünde İfade'yi seçin. Hedef özniteliği certificateUserIds olarak seçin ve kaynak alana aşağıdaki ifadeyi ekleyin. Kaynak özniteliğiniz userPrincipalName değilse, ifadeyi buna göre değiştirebilirsiniz.

"X509:<PN>"&[userPrincipalName]

x509'un nasıl eşitlenmesinin ekran görüntüsü.

X509:<RFC822>RFC822Name eşitleme

X509:<RFC822 RFC822Name>öğesini eşitlemek için bir giden eşitleme kuralı oluşturun ve akış türünde İfade'yi seçin. Hedef özniteliği certificateUserIds olarak seçin ve kaynak alana aşağıdaki ifadeyi ekleyin. Kaynak özniteliğiniz userPrincipalName değilse, ifadeyi buna göre değiştirebilirsiniz.

"X509:<RFC822>"&[userPrincipalName]

RFC822Name'in nasıl eşitlenmesinin ekran görüntüsü.

  1. Hedef Öznitelik'e tıklayın, certificateUserIds'i seçin, Kaynak'a tıklayın, userPrincipalName öğesini seçin ve ardından Kaydet'e tıklayın.

    Kuralı kaydetme ekran görüntüsü.

  2. Onaylamak için Tamam'a tıklayın.

Önemli

Önceki örneklerde dönüştürme kuralında kaynak özniteliği olarak userPrincipalName atribute kullanılır. Kullanılabilir herhangi bir özniteliği uygun değerle kullanabilirsiniz. Örneğin, bazı kuruluşlar mail özniteliğini kullanır. Daha karmaşık dönüştürme kuralları için bkz. Microsoft Entra Bağlan Sync: Bildirim Temelli Sağlama İfadelerini Anlama

Bildirim temelli sağlama ifadeleri hakkında daha fazla bilgi için bkz. Microsoft Entra Bağlan: Bildirim temelli Sağlama İfadeleri.

altSecurityIdentities özniteliğini Active Directory'den Microsoft Entra ID sertifikasıUserIds ile eşitleme

altSecurityIdentities özniteliği, varsayılan öznitelik kümesinin bir parçası değildir. Bir yöneticinin Meta veri kümesindeki kişi nesnesine yeni bir öznitelik eklemesi ve ardından bu verileri Entra ID'deki certificateUserIds'e aktarmak için uygun eşitleme kurallarını oluşturması gerekir.

  1. Metaverse Tasarım Aracı açın ve kişi nesnesini seçin. alternativeSecurityId özniteliğini oluşturmak için Yeni öznitelik'e tıklayın. CertificateUserIds için desteklenen uzunluk üst sınırı olan 1024 karaktere kadar bir öznitelik boyutu oluşturmak için Dize 'yi (dizine eklenemez) seçin. Dize (dizinlenebilir) seçeneğini belirlerseniz, öznitelik değerinin en büyük boyutu 448 karakterdir. Çok değerli'yi seçtiğinizden emin olun.

    Yeni bir özniteliğin nasıl oluşturulacağını gösteren ekran görüntüsü.

  2. Metaverse Tasarım Aracı açın ve person nesnesine eklemek için alternativeSecurityId öğesini seçin.

    Person nesnesine alternativeSecurityId ekleme işleminin ekran görüntüsü.

  3. altSecurityId varlıklarından alternativeSecurityId özniteliğine dönüştürmek için bir gelen eşitleme kuralı oluşturun.

    Gelen kuralında aşağıdaki seçenekleri kullanın.

    Seçenek Değer
    Veri Akışı Adı Kuralın açıklayıcı adı, örneğin: Active Directory'den - altSecurityIdentities
    Bağlan Sistem şirket içi Active Directory etki alanınız
    Bağlan Sistem Nesne Türü kullanıcı
    Meta Veri Deposu Nesne Türü kişi
    Öncelik Şu anda kullanılmayan 100'in altında bir sayı seçin

    Ardından Dönüştürmeler'e tıklayın ve aşağıdaki ekran görüntüsünde gösterildiği gibi altSecurityIdentities kaynak özniteliğinden alternativeSecurityId hedef özniteliğine doğrudan bir eşleme oluşturun.

    altSecurityId varlıklarından alternateSecurityId özniteliğine dönüştürmenin ekran görüntüsü.

  4. Entra Id içindeki alternativeSecurityId özniteliğinden certificateUserIds özniteliğine dönüştürmek için bir giden eşitleme kuralı oluşturun.

    Seçenek Değer
    Veri Akışı Adı Kuralın açıklayıcı adı, örneğin: Out to Microsoft Entra ID - certificateUserIds
    Bağlan Sistem Microsoft Entra etki alanınız
    Bağlan Sistem Nesne Türü kullanıcı
    Meta Veri Deposu Nesne Türü kişi
    Öncelik 150 gibi tüm varsayılan kuralların üzerinde şu anda kullanılmayan yüksek bir sayı seçin

    Ardından Dönüştürmeler'e tıklayın ve aşağıdaki ekran görüntüsünde gösterildiği gibi alternativeSecurityId kaynak özniteliğinden certificateUserIds hedef özniteliğine doğrudan eşleme oluşturun.

    alternateSecurityId özniteliğinden certificateUserIds'e dönüştürülecek giden eşitleme kuralının ekran görüntüsü.

  5. CertificateUserIds özniteliğine verileri doldurmak için eşitlemeyi çalıştırın.

  6. Başarılı olduğunu doğrulamak için Entra Id'de kullanıcının Yetkilendirme bilgilerini görüntüleyin.

    Başarılı eşitlemenin ekran görüntüsü.

altSecurityIdentities özniteliğindeki değerlerin bir alt kümesini eşlemek için 4. adımdaki Dönüştürme değerini bir İfade ile değiştirin. İfade kullanmak için Dönüşümler sekmesine geçin ve FlowType seçeneğinizi İfade, certificateUserIds hedef özniteliği olarak değiştirin ve ardından ifadeyi Kaynak alanına girin. Aşağıdaki örnek yalnızca SKI ve SHA1PublicKey Sertifika eşleme alanlarına hizalanmış değerleri filtreler:

İfadenin ekran görüntüsü.

İfade kodu:

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

Yönetici istrator'lar, desteklenen desenlerle uyumlu altSecurityId varlıklarından değerleri filtreleyebilir. CBA yapılandırmasının, bu değerleri kullanarak kimlik doğrulamasını etkinleştirmek için certificateUserIds ile eşitlenen kullanıcı adı bağlamalarını destekleyecek şekilde güncelleştirildiğinden emin olun.

Sonraki adımlar