如何使用 Azure Active Directory B2C GraphServiceClient 创建全局管理员用户?
How to create Global Administrator user using Azure Active Directory B2C GraphServiceClient?
我想使用 GraphServiceClient
(Microsoft Graph API,而不是 Azure AD Graph API)在 Azure Active Directory B2C 中创建一个新用户。我通过设置 UserType = "Global Administrator"
尝试了以下操作,但这不起作用并且 newAdminUser
显示为常规 User
而不是 Global Administrator
。我做错了什么?
User newAdminUser = await graphClient.Users.Request().AddAsync(new User
{
AccountEnabled = true,
DisplayName = userBinding.FullName,
MailNickname = userBinding.UserName,
UserPrincipalName = userBinding.UserName + '@' + domain,
PasswordProfile = new PasswordProfile
{
Password = new NetworkCredential(string.Empty, userBinding.Password).Password,
ForceChangePasswordNextSignIn = true
}
});
await graphClient.Users[newAdminUser.Id].Request().UpdateAsync(new User()
{
UserType = "Global Administrator"
});
这里是 newAdminUser
的 Azure Active Directory B2C 配置文件的屏幕截图,显示授予的权限不是 Global Administrator
。
所有用户,无论是否为管理员,都是目录中的一个 user
对象。给定 user
的访问权限也取决于它们所属的目录角色。
为了将某人分配给 "Global administrator" 角色,您需要将 user
添加到正确的角色。
- 通过检索 list of
directoryRoles
: 找到您想要的角色的 id
var directoryRoles = await graphClient.DirectoryRoles
.Request()
.GetAsync();
- Add the
user
角色:
await graphClient.DirectoryRoles["role-id"]
.Members
.References
.Request()
.AddAsync(newAdminUser);
我想使用 GraphServiceClient
(Microsoft Graph API,而不是 Azure AD Graph API)在 Azure Active Directory B2C 中创建一个新用户。我通过设置 UserType = "Global Administrator"
尝试了以下操作,但这不起作用并且 newAdminUser
显示为常规 User
而不是 Global Administrator
。我做错了什么?
User newAdminUser = await graphClient.Users.Request().AddAsync(new User
{
AccountEnabled = true,
DisplayName = userBinding.FullName,
MailNickname = userBinding.UserName,
UserPrincipalName = userBinding.UserName + '@' + domain,
PasswordProfile = new PasswordProfile
{
Password = new NetworkCredential(string.Empty, userBinding.Password).Password,
ForceChangePasswordNextSignIn = true
}
});
await graphClient.Users[newAdminUser.Id].Request().UpdateAsync(new User()
{
UserType = "Global Administrator"
});
这里是 newAdminUser
的 Azure Active Directory B2C 配置文件的屏幕截图,显示授予的权限不是 Global Administrator
。
所有用户,无论是否为管理员,都是目录中的一个 user
对象。给定 user
的访问权限也取决于它们所属的目录角色。
为了将某人分配给 "Global administrator" 角色,您需要将 user
添加到正确的角色。
- 通过检索 list of
directoryRoles
: 找到您想要的角色的
id
var directoryRoles = await graphClient.DirectoryRoles
.Request()
.GetAsync();
- Add the
user
角色:
await graphClient.DirectoryRoles["role-id"]
.Members
.References
.Request()
.AddAsync(newAdminUser);