Share via


Taleplerdeki dizin uzantısı öznitelikleri

Dizin uzantısı öznitelikleri, kullanıcılar gibi dizin nesneleri üzerinde daha fazla veri depolamak için bir yol sağlar. Uygulamalara beyan göndermek için yalnızca kullanıcı nesnelerindeki uzantı öznitelikleri kullanılabilir. Bu makalede, belirteç taleplerindeki uygulamalara kullanıcı verileri göndermek için dizin uzantısı özniteliklerinin nasıl kullanılacağı açıklanmaktadır.

Not

Microsoft Graph, Graph nesnelerini özelleştirmek için üç uzantı mekanizması daha sağlar. Bunlar 1-15 uzantı öznitelikleri, açık uzantılar ve şema uzantılarıdır. Ayrıntılar için bkz. Microsoft Graph belgeleri. Açık ve şema uzantılarını kullanan Microsoft Graph nesnelerinde depolanan veriler belirteçlerdeki talepler için kaynak olarak kullanılamaz.

Dizin uzantısı öznitelikleri her zaman kiracıdaki bir uygulamayla ilişkilendirilir. Dizin özniteliğinin adı, adında uygulamanın appId değerini içerir.

Dizin uzantısı özniteliğinin tanımlayıcısı biçimindedir extension_xxxxxxxxx_AttributeName. Burada xxxxxxxxx uzantının tanımlandığı uygulamanın appId değeridir ve yalnızca 0-9 ve A-Z karakterleri bulunur.

Dizin uzantılarını kaydetme ve kullanma

Dizin uzantısı özniteliklerini aşağıdaki yollardan biriyle kaydedin:

Microsoft Entra Bağlan verileriyle talep yayma

Microsoft Entra Bağlan kullanılarak oluşturulan ve eşitlenen dizin uzantısı öznitelikleri her zaman Microsoft Entra Bağlan tarafından kullanılan uygulama kimliğiyle ilişkilendirilir. Bu öznitelikler, portaldaki Enterprise Applications yapılandırmasında talep olarak yapılandırılarak talepler için kaynak olarak kullanılabilir. AD Bağlan kullanılarak bir dizin uzantısı özniteliği oluşturulduktan sonra, SAML SSO talep yapılandırmasında görüntülenir.

Graph veya PowerShell kullanarak talep yayma

Microsoft Graph veya PowerShell kullanmak için bir dizin uzantısı özniteliği kayıtlıysa, kullanıcı oturum açtığında uygulama bu öznitelikteki verileri alacak şekilde yapılandırılabilir. Uygulama, uygulama bildiriminde ayarlanabilen isteğe bağlı talepler kullanılarak uygulamada kayıtlı dizin uzantılarındaki verileri alacak şekilde yapılandırılabilir.

Çok kiracılı uygulamalar daha sonra dizin uzantısı özniteliklerini kendi kullanımları için kaydedebilir. Uygulama bir kiracıya sağlandığında, ilişkili dizin uzantıları söz konusu kiracıdaki kullanıcılar için kullanılabilir ve kullanılır hale gelir. Dizin uzantısı kullanılabilir olduktan sonra, Microsoft Graph kullanarak verileri depolamak ve almak için kullanılabilir. Dizin uzantısı, Microsoft kimlik platformu uygulamalara yaydığı belirteçlerdeki taleplerle de eşlenebilir.

Bir uygulamanın farklı bir uygulamada kayıtlı bir uzantı özniteliğinden veri içeren talepler göndermesi gerekiyorsa, uzantı özniteliğini taleple eşlemek için bir talep eşleme ilkesi kullanılmalıdır.

Dizin uzantısı özniteliklerini yönetmeye yönelik yaygın bir desen, özellikle ihtiyacınız olan tüm dizin uzantıları için bir uygulama kaydetmektir. Bu tür bir uygulama kullandığınızda, tüm uzantıların adında aynı appID bulunur.

Örneğin, aşağıdaki kod bir OAuth/OIDC belirtecindeki dizin uzantısı özniteliğinden tek bir talep yaymak için bir talep eşleme ilkesi gösterir:

{
    "ClaimsMappingPolicy": {
        "Version": 1,
        "IncludeBasicClaimSet": "false",
        "ClaimsSchema": [{
                "Source": "User",
                "ExtensionID": "extension_xxxxxxx_test",
                "JWTClaimType": "http://schemas.contoso.com/identity/claims/exampleclaim"
            },
        ]
    }
}

Burada xxxxxxx , uzantının kaydedildiği uygulamanın appID'si (veya İstemci Kimliği).

Uyarı

Dizin uzantısı özniteliği için talep eşleme ilkesi tanımladığınızda, önceki örnekte gösterildiği gibi dizinin gövdesinde ClaimsSchema özelliği yerine ID özelliğini kullanınExtensionID.

İpucu

Nesnelerde dizin uzantısı özniteliklerini ayarladığınızda büyük/küçük harf tutarlılığı önemlidir. Uzantı öznitelik adları ayarlanırken büyük/küçük harfe duyarlı değildir, ancak belirteç hizmeti tarafından dizinden okunurken büyük/küçük harfe duyarlıdır. Uzantı özniteliği "LegacyId" adlı bir kullanıcı nesnesinde ve "legacyid" adlı başka bir kullanıcı nesnesinde ayarlanırsa, öznitelik "LegacyId" adı kullanılarak bir taleple eşlendiğinde veriler başarıyla alınır ve ilk kullanıcı için belirteçte yer alan talep ikinci değil.

Sonraki adımlar