如何通过Microsoft Graph调用创建仅支持用户名登录的B2C用户?
在Azure AD B2C中通过Microsoft Graph创建仅用户名登录的用户
可以通过Microsoft Graph实现这个需求,核心是指定用户名登录的账户类型,并配置B2C要求的必填属性。以下是完整的请求示例:
POST https://graph.microsoft.com/v1.0/users Content-type: application/json { "displayName": "John Doe", "signInType": "userName", "userPrincipalName": "john_doe@your-b2c-tenant.onmicrosoft.com", "mailNickname": "john_doe", "accountEnabled": true, "passwordProfile": { "password": "StrongPass123!", "forceChangePasswordNextSignIn": false }, "passwordPolicies": "DisablePasswordExpiration" }
关键参数说明:
- signInType: 必须设为
userName,明确指定该用户使用用户名而非邮箱/手机号登录 - userPrincipalName: 格式为
{用户名}@{你的B2C租户域名},租户域名可以是xxx.onmicrosoft.com或自定义域名 - mailNickname: Azure AD B2C必填属性,建议和用户名保持一致,不能留空
- accountEnabled: 设为
true以启用用户账户,否则用户无法登录 - passwordProfile: 保持你原有配置即可,注意密码需符合B2C的密码复杂度策略
注意事项:
- 不需要填写
mail属性,这样用户就无需关联邮箱地址 - 确保调用Graph的应用程序拥有
User.ReadWrite.All应用权限,且已在B2C租户中完成授权 - 用户名不能包含特殊字符,需符合B2C的用户名规则
内容的提问来源于stack exchange,提问作者Madhu77
相关产品推荐
相关产品推荐

