无用户邮箱时,如何通过Microsoft Graph API创建可与Teams员工聊天的访客?
解决方法
你不需要依赖真实用户邮箱来创建可参与Teams聊天的访客,可以直接用**POST /users** Microsoft Graph API端点创建访客用户:
- 在请求体里设置
userType为Guest,同时填一个格式合法的虚构邮箱(比如temp-guest-{{随机唯一ID}}@你的租户域名.onmicrosoft.com)就行——这个邮箱不需要实际存在或能收邮件,因为这类访客不需要登录验证,只是作为聊天会话里的身份载体。 - 创建成功后拿到访客的
id,再调用POST /chats端点,就能创建包含该访客和企业员工的Teams聊天会话。
创建访客的示例请求体
{ "accountEnabled": true, "displayName": "网站访客", "mailNickname": "web-guest", "userPrincipalName": "temp-guest-789@contoso.onmicrosoft.com", "userType": "Guest", "passwordProfile": { "forceChangePasswordNextSignIn": false, "password": "RandomTempPass123!" } }
注意事项
- 你的应用需要拥有
User.ReadWrite.All的应用权限才能调用这个端点创建用户。 - 因为访客不需要登录,
passwordProfile里的密码随便设一个符合复杂度要求的临时值就行,不用告知用户。 - 可以在聊天会话结束后删除这类临时访客用户,避免租户内积累过多无用账号。
内容的提问来源于stack exchange,提问作者Cedric Arnould
相关产品推荐
相关产品推荐

