Создание нового пользователя AD B2C через Microsoft Graph API - PullRequest
1 голос
/ 10 апреля 2019

Я решил использовать Microsoft.Graph .NET SDK вместо старого API Azure Graph с ручными HTTP-запросами.

Проблема заключается в том, что при попытке создать нового пользователя с электронной почтойНапример, areller@gmail.com

var req = _client.Users.Request();
var userRes = req.AddAsync(new User()
{
    AccountEnabled = true,
    DisplayName = user.Email,
    MailNickname = user.GivenName,
    GivenName = user.GivenName,
    Surname = user.SurName,
    UserPrincipalName = user.Email,
    PasswordProfile = new PasswordProfile()
    {
        Password = user.Password,
        ForceChangePasswordNextSignIn = true
    },
    PasswordPolicies = "DisablePasswordExpiration, DisableStrongPassword",
    Country = user.Country,
    City = user.City,
    PostalCode = user.ZipCode
}).Result;

Я получаю исключение, которое говорит: «Свойство userPrincipalName недопустимо» enter image description here

Я могу создать толькопользователь, когда я использую электронную почту с арендатором в качестве домена, например areller@mytenant.onmicrosoft.com Но это не то, что мне нужно.Мне нужно иметь возможность создавать реальных внешних пользователей программно.

С помощью API Azure Graph это работает. Есть ли способ заставить его работать с Microsoft Graph API?

1 Ответ

2 голосов
/ 11 апреля 2019

В настоящее время вы не можете использовать Microsoft Graph для создания пользователей в клиенте Azure AD B2C, поскольку он не поддерживает некоторые из пользовательских свойств (включая creationType и signInNames свойств), которые используются Azure AD B2C.

Вы должны использовать график Azure AD для этого .

Примечание. Когда вы создаете пользователей в клиенте Azure AD B2C, для свойства creationType задайте значение LocalAccount, тогда свойство userPrincipalName устанавливать не нужно, поскольку это свойство signInNames , которое содержит адрес электронной почты внешнего пользователя.

...