Поделиться через


Создание customAuthenticationExtension

Пространство имен: microsoft.graph

Создайте объект customAuthenticationExtension . В настоящее время поддерживаются следующие производные типы.

Этот API доступен в следующих национальных облачных развертываниях.

Глобальная служба Правительство США L4 Правительство США L5 (DOD) Китай управляется 21Vianet

Разрешения

Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.

Тип разрешения Разрешения с наименьшими привилегиями Более высокие привилегированные разрешения
Делегированные (рабочая или учебная учетная запись) CustomAuthenticationExtension.ReadWrite.All Недоступно.
Делегированные (личная учетная запись Майкрософт) Не поддерживается. Не поддерживается.
Приложение CustomAuthenticationExtension.ReadWrite.All Недоступно.

Важно!

В делегированных сценариях с рабочими или учебными учетными записями администратору должна быть назначена поддерживаемая Microsoft Entra роль или настраиваемая роль с разрешением поддерживаемой роли. Для этой операции поддерживаются следующие наименее привилегированные роли:

  • Администратор расширяемости проверки подлинности
  • Администратор приложений

HTTP-запрос

POST /identity/customAuthenticationExtensions

Заголовки запросов

Имя Описание
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.
Content-Type application/json. Обязательно.

Текст запроса

В тексте запроса укажите представление объекта customAuthenticationExtension в формате JSON.

При создании customAuthenticationExtension можно указать следующие свойства. Необходимо указать свойство @odata.type со значением типа объекта customAuthenticationExtension, который требуется создать. Например, чтобы создать объект onTokenIssuanceStartCustomExtension , задайте для @odata.type значение #microsoft.graph.onTokenIssuanceStartCustomExtension.

Свойство Тип Описание
authenticationConfiguration customExtensionAuthenticationConfiguration Конфигурация проверки подлинности для этого настраиваемого расширения. Обязательно.
claimsForTokenConfiguration коллекция onTokenIssuanceStartReturnClaim Коллекция утверждений, возвращаемых API, вызываемая этим пользовательским расширением проверки подлинности. Можно задать только для объекта onTokenIssuanceStartCustomExtension . Используется для заполнения интерфейса сопоставления утверждений в Центр администрирования Microsoft Entra. Необязательный параметр.
clientConfiguration customExtensionClientConfiguration Параметры подключения для настраиваемого расширения. Необязательный параметр.
description String Описание настраиваемого расширения. Необязательный параметр.
displayName String Отображаемое имя настраиваемого расширения. Обязательно.
endpointConfiguration customExtensionEndpointConfiguration Конфигурация конечной точки API, вызываемой пользовательским расширением. Обязательно.

Отклик

В случае успешного выполнения этот метод возвращает код отклика 201 Created и объект customAuthenticationExtension в тексте отклика.

Примеры

Запрос

Ниже показан пример запроса.

POST https://graph.microsoft.com/v1.0/identity/customAuthenticationExtensions
Content-Type: application/json
Content-length: 468

{
    "@odata.type": "#microsoft.graph.onTokenIssuanceStartCustomExtension",
    "displayName": "onTokenIssuanceStartCustomExtension",
    "description": "Fetch additional claims from custom user store",
    "endpointConfiguration": {
        "@odata.type": "#microsoft.graph.httpRequestEndpoint",
        "targetUrl": "https://authenticationeventsAPI.contoso.com"
    },
    "authenticationConfiguration": {
        "@odata.type": "#microsoft.graph.azureAdTokenAuthentication",
        "resourceId": "api://authenticationeventsAPI.contoso.com/a13d0fc1-04ab-4ede-b215-63de0174cbb4"
    },
    "clientConfiguration": {
        "timeoutInMilliseconds": 2000,
        "maximumRetries": 1
    },
    "claimsForTokenConfiguration": [
        {
            "claimIdInApiResponse": "DateOfBirth"
        },
        {
            "claimIdInApiResponse": "CustomRoles"
        }
    ]
}

Отклик

Ниже показан пример отклика.

Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.

HTTP/1.1 201 Created
Content-Type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#identity/customAuthenticationExtensions/$entity",
    "@odata.type": "#microsoft.graph.onTokenIssuanceStartCustomExtension",
    "id": "6fc5012e-7665-43d6-9708-4370863f4e6e",
    "displayName": "onTokenIssuanceStartCustomExtension",
    "description": "Fetch additional claims from custom user store",
    "clientConfiguration": null,
    "authenticationConfiguration": {
        "@odata.type": "#microsoft.graph.azureAdTokenAuthentication",
        "resourceId": "api://authenticationeventsAPI.contoso.com/a13d0fc1-04ab-4ede-b215-63de0174cbb4"
    },
    "clientConfiguration": {
        "timeoutInMilliseconds": 2000,
        "maximumRetries": 1
    },
    "endpointConfiguration": {
        "@odata.type": "#microsoft.graph.httpRequestEndpoint",
        "targetUrl": "https://authenticationeventsAPI.contoso.com"
    },
    "claimsForTokenConfiguration": [
        {
            "claimIdInApiResponse": "DateOfBirth"
        },
        {
            "claimIdInApiResponse": "CustomRoles"
        }
    ]
}