Пространство имен: microsoft.graph
Создайте объект externalAuthenticationMethod . Этот API не поддерживает операции самообслуживания.
Этот API доступен в следующих национальных облачных развертываниях.
| Глобальная служба |
Правительство США L4 |
Правительство США L5 (DOD) |
Китай управляется 21Vianet |
| ✅ |
❌ |
❌ |
❌ |
Разрешения
Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
| Тип разрешения |
Разрешения с наименьшими привилегиями |
Более высокие привилегированные разрешения |
| Делегированные (рабочая или учебная учетная запись) |
UserAuthMethod-External.ReadWrite |
UserAuthMethod-External.ReadWrite.All, UserAuthenticationMethod.ReadWrite, UserAuthenticationMethod.ReadWrite.All |
| Делегированные (личная учетная запись Майкрософт) |
Не поддерживается. |
Не поддерживается. |
| Приложение |
UserAuthMethod-External.ReadWrite.All |
UserAuthenticationMethod.ReadWrite.All |
Важно!
Для делегированного доступа с использованием рабочих или учебных учетных записей, в которых пользователь, выполнив вход, работает с другим пользователем, ему должна быть назначена поддерживаемая Microsoft Entra роль или настраиваемая роль, которая предоставляет разрешения, необходимые для этой операции. Эта операция поддерживает следующие встроенные роли, которые предоставляют только минимальные необходимые привилегии:
- Администратор проверки подлинности
- Привилегированный администратор проверки подлинности
Когда пользователи управляют собственными методами проверки подлинности, система предлагает им выполнить многофакторную проверку подлинности (MFA), если они в последний раз прошли проверку подлинности более 10 минут назад в текущем сеансе.
HTTP-запрос
Назначьте внешнюю MFA другому пользователю. Этот API не поддерживает операции самообслуживания.
POST /users/{usersId}/authentication/externalAuthenticationMethods
Текст запроса
В тексте запроса укажите представление объекта externalAuthenticationMethod в формате JSON.
При создании externalAuthenticationMethod можно указать следующие свойства.
| Свойство |
Тип |
Описание |
| configurationId |
String |
Уникальный идентификатор, используемый для управления внешними методами проверки подлинности и их интеграции в Microsoft Entra ID. Обязательно. |
| displayName |
String |
Пользовательское имя, присвоенное зарегистрированной внешней многофакторной проверке подлинности. Обязательно. |
Отклик
В случае успешного выполнения этот метод возвращает код отклика 201 Created и объект externalAuthenticationMethod в теле отклика.
Примеры
Запрос
Ниже показан пример запроса.
POST https://graph.microsoft.com/v1.0/users/{id}/authentication/externalAuthenticationMethods
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.externalAuthenticationMethod",
"configurationId": "26310fee-860b-4eab-8749-ab730dcf335e",
"displayName": "Adatum"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new ExternalAuthenticationMethod
{
OdataType = "#microsoft.graph.externalAuthenticationMethod",
ConfigurationId = "26310fee-860b-4eab-8749-ab730dcf335e",
DisplayName = "Adatum",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Users["{user-id}"].Authentication.ExternalAuthenticationMethods.PostAsync(requestBody);
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewExternalAuthenticationMethod()
configurationId := "26310fee-860b-4eab-8749-ab730dcf335e"
requestBody.SetConfigurationId(&configurationId)
displayName := "Adatum"
requestBody.SetDisplayName(&displayName)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
externalAuthenticationMethods, err := graphClient.Users().ByUserId("user-id").Authentication().ExternalAuthenticationMethods().Post(context.Background(), requestBody, nil)
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
ExternalAuthenticationMethod externalAuthenticationMethod = new ExternalAuthenticationMethod();
externalAuthenticationMethod.setOdataType("#microsoft.graph.externalAuthenticationMethod");
externalAuthenticationMethod.setConfigurationId("26310fee-860b-4eab-8749-ab730dcf335e");
externalAuthenticationMethod.setDisplayName("Adatum");
ExternalAuthenticationMethod result = graphClient.users().byUserId("{user-id}").authentication().externalAuthenticationMethods().post(externalAuthenticationMethod);
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
const options = {
authProvider,
};
const client = Client.init(options);
const externalAuthenticationMethod = {
'@odata.type': '#microsoft.graph.externalAuthenticationMethod',
configurationId: '26310fee-860b-4eab-8749-ab730dcf335e',
displayName: 'Adatum'
};
await client.api('/users/{id}/authentication/externalAuthenticationMethods')
.post(externalAuthenticationMethod);
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\ExternalAuthenticationMethod;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new ExternalAuthenticationMethod();
$requestBody->setOdataType('#microsoft.graph.externalAuthenticationMethod');
$requestBody->setConfigurationId('26310fee-860b-4eab-8749-ab730dcf335e');
$requestBody->setDisplayName('Adatum');
$result = $graphServiceClient->users()->byUserId('user-id')->authentication()->externalAuthenticationMethods()->post($requestBody)->wait();
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
Import-Module Microsoft.Graph.Identity.SignIns
$params = @{
"@odata.type" = "#microsoft.graph.externalAuthenticationMethod"
configurationId = "26310fee-860b-4eab-8749-ab730dcf335e"
displayName = "Adatum"
}
New-MgUserAuthenticationExternalAuthenticationMethod -UserId $userId -BodyParameter $params
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.external_authentication_method import ExternalAuthenticationMethod
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = ExternalAuthenticationMethod(
odata_type = "#microsoft.graph.externalAuthenticationMethod",
configuration_id = "26310fee-860b-4eab-8749-ab730dcf335e",
display_name = "Adatum",
)
result = await graph_client.users.by_user_id('user-id').authentication.external_authentication_methods.post(request_body)
Подробнее о том, как добавить SDK в свой проект и создать экземпляр authProvider, см. в документации по SDK.
Отклик
Ниже показан пример отклика.
Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.externalAuthenticationMethod",
"id": "78381c69-811f-51f6-66ec-c2c2aa0e2b46",
"createdDateTime": "2025-04-02T16:01:39",
"configurationId": "26310fee-860b-4eab-8749-ab730dcf335e",
"displayName": "Adatum"
}