Aracılığıyla paylaş


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 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.

Ö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.

  1. Microsoft Graph Gezgini'nde, hizmet sorumlusu API'sini kullanmak için özel talep ilkesini yapılandırmak istediğiniz uygulamayı belirleyin.

  2. 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
    }
    
  3. 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 EmployeeIDTenantCountry 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.

  1. Microsoft Graph Gezgini'nde, hizmet sorumlusu API'sini kullanmak için özel talep ilkesini yapılandırmak istediğiniz uygulamayı belirleyin.

  2. 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": []
                    }
                ]
            }
        ]
    }
    
  3. 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.

  1. Microsoft Graph Gezgini'nde, hizmet sorumlusu API'sini kullanmak için özel talep ilkesini yapılandırmak istediğiniz uygulamayı belirleyin.

  2. 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.

  3. Yeni ilkenizi görmek ve ilkeyi ObjectIdalmak 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": [...]
    }