如何创建预分配Entra ID角色的用户?
创建用户并分配Entra ID内置角色的方法
目前没有原生的Microsoft Graph API支持一次性完成用户创建与Entra ID内置角色分配的操作,必须通过两个独立的API调用分步实现:
步骤1:创建用户
调用/users API创建用户,请求体示例如下:
{ "accountEnabled": true, "displayName": "My Name", "mailNickname": "MyName", "userPrincipalName": "MyName@contoso.com", "passwordProfile" : { "forceChangePasswordNextSignIn": true, "password": "****" } }
调用成功后,会返回新创建用户的id字段,后续分配角色时需要用到这个ID。
步骤2:分配Entra ID内置角色
调用/roleManagement/directory/roleAssignments API为用户分配角色,请求体需要包含以下核心参数:
roleDefinitionId:目标Entra ID内置角色的唯一ID(比如全局管理员、用户管理员等角色对应的ID)principalId:步骤1中创建的用户IDdirectoryScopeId:角色作用域,租户级作用域用/表示
请求体示例:
{ "roleDefinitionId": "内置角色ID", "principalId": "步骤1返回的用户ID", "directoryScopeId": "/" }
注意事项
- 调用这两个API的身份需要具备对应的权限:创建用户需要
User.ReadWrite.All权限,分配角色需要RoleManagement.ReadWrite.Directory权限 - 需确保用户创建操作完成后再执行角色分配,避免因用户数据未同步导致分配失败
内容的提问来源于stack exchange,提问作者Turbo
相关产品推荐
相关产品推荐

