Microsoft Graph Özel Talep İlkesi'ni kullanarak talepleri özelleştirme (önizleme)
Talep, kimlik sağlayıcısının bu kullanıcı için verdikleri belirtecin içindeki bir kullanıcı hakkında belirttiği bilgilerdir. Talep özelleştirme, kiracı yöneticileri tarafından kiracılarındaki belirli bir uygulama için belirteçlerde yayılan talepleri özelleştirmek için kullanılır. Talep özelleştirmesi SAML, OAuth ve OpenID Connect protokollerini kullanarak uygulamalar için talepleri yapılandırmayı destekler. Talep özelleştirmesini kullanarak:
- Belirteçlere hangi taleplerin dahil olduğunu seçin.
- Henüz mevcut olmayan talep türleri oluşturun.
- Belirli taleplerde yayılan verilerin kaynağını seçin veya değiştirin.
Bu nasıl yapılır kılavuzunda, Özel Talepler ilkesini nasıl kullanacağınızı anlamanıza yardımcı olabilecek birkaç yaygın senaryoyu ele alacağız.
Önkoşullar
- Microsoft Entra kiracısı.
- Microsoft Entra yönetim merkezinde yapılandırılmış bir Kurumsal Uygulama.
- PowerShell kullanıcıları için en son Microsoft Graph PowerShell SDK'sını indirin. Bu adım isteğe bağlıdır.
Microsoft Entra Id'de talep özelleştirmesi
Microsoft Entra ID, uygulamalarınız için Microsoft Graph/PowerShell kullanarak talepleri özelleştirmenin iki yolunu destekler:
- Özel Talep İlkesi Kullanma (Önizleme)
- Talep Eşleme İlkesini Kullanma
Aşağıdaki örneklerde hizmet sorumluları için ilkeleri oluşturur, güncelleştirir ve değiştirirsiniz. Özel talep ilkeleri her zaman hizmet sorumlusu nesnelerine bağlanır. Uygulama/hizmet sorumlusu için özel talep ilkesi oluşturmadan önce, Kurumsal Uygulamanızı önkoşulların bir parçası olarak yapılandırdığınızdan emin olun.
Tarayıcınızda Microsoft Graph Gezgini'ni açın, En azından Uygulama Yöneticisi olarak Microsoft Graph Gezgini'nde oturum açın, aşağıdaki senaryolardan birini seçin.
- Belirteçlerden temel talepleri atla
- EmployeeID ve TenantCountry değerlerini belirteçlere talep olarak ekleme
- Belirteçlerde talep dönüştürme kullanma
Özel Talepler ilkesi oluşturduktan sonra, belirteçlerin özelleştirilmiş talepleri içerdiğini kabul etmek için uygulamanızı yapılandırmanız gerekir. Daha fazla bilgi için bkz . Güvenlikle ilgili dikkat edilmesi gerekenler.
Belirteçlerden temel talepleri atla
Bu örnekte, bağlı hizmet sorumlusuna verilen belirteçlerden temel talep kümesini kaldıran bir özel talep ilkesi oluşturursunuz.
Microsoft Graph Gezgini'nde, hizmet sorumlusu API'sini kullanmak için özel talep ilkesini yapılandırmak istediğiniz uygulamayı belirleyin.
Aşağıdaki API'yi çalıştırarak Özel Talepler ilkesini oluşturun. Bir hizmet sorumlusuna bağlı olan bu ilke, belirteçlerden temel talepleri atlar.
PUT https://graph.microsoft.com/beta/servicePrincipals/<servicePrincipal-id>/claimsPolicy
İstek Gövdesi:
{ "includeBasicClaimSet": false }
Yeni ilkenizi görmek için aşağıdaki komutu çalıştırın
GET https://graph.microsoft.com/beta/servicePrincipals/<servicePrincipal-id>/claimsPolicy
Yanıt:
HTTP/1.1 200 OK Content-type: application/json { "@odata.context": "…", "id": "aaaaaaaa-bbbb-cccc-1111-222222222222.", "includeBasicClaimSet": false, "includeApplicationIdInIssuer": false, "audienceOverride": null, "groupFilter": null, "claims": [] }
belirteçlere ve'yi EmployeeID
TenantCountry
talep olarak ekleme
Bu örnekte, ve'yi TenantCountry
belirteçlere ekleyen EmployeeID
taleplerde bir özelleştirme oluşturursunuz. Bu örnekte, belirteçlere ayarlanan temel talepleri de ekleyeceğiz.
Microsoft Graph Gezgini'nde, hizmet sorumlusu API'sini kullanmak için özel talep ilkesini yapılandırmak istediğiniz uygulamayı belirleyin.
Aşağıdaki API'yi çalıştırarak Özel Talepler ilkesini oluşturun. Hizmet sorumlusuna bağlı olan bu ilke, EmployeeID ve TenantCountry taleplerini belirteçlere ekler.
PUT https://graph.microsoft.com/beta/servicePrincipals/<servicePrincipal-id>/claimsPolicy
İstek Gövdesi:
{ "includeBasicClaimSet": true, "claims": [ { "@odata.type": "#microsoft.graph.customClaim", "name": "employeeId", "namespace": null, "tokenFormat": [ "jwt" ], "samlAttributeNameFormat": null, "configurations": [ { "condition": null, "attribute": { "@odata.type": "#microsoft.graph.sourcedAttribute", "id": " employeeid", "source": "user", "isExtensionAttribute": false }, "transformations": [] } ] }, { "@odata.type": "#microsoft.graph.customClaim", "name": "country", "namespace": null, "tokenFormat": [ "jwt" ], "samlAttributeNameFormat": null, "configurations": [ { "condition": null, "attribute": { "@odata.type": "#microsoft.graph.sourcedAttribute", "id": " tenantcountry", "source": "user", "isExtensionAttribute": false }, "transformations": [] } ] } ] }
Yeni ilkenizi görmek için aşağıdaki komutu çalıştırın:
GET https://graph.microsoft.com/beta/servicePrincipals/<servicePrincipal-id>/claimsPolicy
Yanıt:
{ "@odata.context": "…", "id": "aaaaaaaa-bbbb-cccc-1111-222222222222", "includeBasicClaimSet": true, "includeApplicationIdInIssuer": false, "audienceOverride": null, "groupFilter": null, "claims": [...] }
Belirteçlerde talep dönüştürme kullanma
Bu örnekte, bağlı hizmet sorumlularına verilen JWT'lere "JoinedData" özel talebi yaymak için bir ilkeyi güncelleştirirsiniz. Bu talep, kullanıcı nesnesindeki extensionattribute1 özniteliğinde depolanan verileri "-ext" ile birleştirerek oluşturulan bir değer içerir. Bu örnekte belirteçlerde ayarlanan temel talepleri hariç tutacağız.
Microsoft Graph Gezgini'nde, hizmet sorumlusu API'sini kullanmak için özel talep ilkesini yapılandırmak istediğiniz uygulamayı belirleyin.
Aşağıdaki API'yi çalıştırarak özel talep ilkesini oluşturun. Bu ilke belirteçlere özel bir talep
JoinedData
yayar.PATCH https://graph.microsoft.com/beta/servicePrincipals/<servicePrincipal-id>/claimsPolicy
İstek Gövdesi:
{ "includeBasicClaimSet": true, "claims": [ { "@odata.type": "#microsoft.graph.customClaim", "name": "JoinedData", "namespace": null, "tokenFormat": [ "jwt" ], "samlAttributeNameFormat": null, "configurations": [ { "condition": null, "attribute": null, "transformations": [ { "@odata.type": "#microsoft.graph.joinTransformation", "separator": "-", "input": { "treatAsMultiValue": false, "attribute": { "@odata.type": "#microsoft.graph.sourcedAttribute", "id": "extensionattribute1", "source": "user", "isExtensionAttribute": false } }, "input2": { "treatAsMultiValue": false, "attribute": { "@odata.type":"#microsoft.graph.valueBasedAttribute", "value": "ext" } } } ] } ] } ] }
Not
Özel Talep İlkesi kesin olarak belirlenmiş bir ilkedir ve her dönüştürme farklı
@odata.type
bir değer kullanır.Yeni ilkenizi görmek ve ilkeyi
ObjectId
almak için aşağıdaki komutu çalıştırın:GET https://graph.microsoft.com/beta/servicePrincipals/<servicePrincipal-id>/claimsPolicy
Yanıt:
{ "@odata.context": "…", "id": "aaaaaaaa-bbbb-cccc-1111-222222222222", "includeBasicClaimSet": true, "includeApplicationIdInIssuer": false, "audienceOverride": null, "groupFilter": null, "claims": [...] }
İlgili içerik
- İlke kullanarak talep özelleştirmesindeki ilkeler arasındaki farklar hakkında daha fazla bilgi edinin
- Microsoft Graph kimlik oturum açma işlemleri