Azure Logic App连接Teams:系统托管身份支持及授权周期问题
问题解答
1. 能否使用系统托管标识或Azure Entra应用连接?
当前Logic App内置的「Post message in a chat or channel」操作仅支持基于用户账号的委派权限连接,但可以通过直接调用Microsoft Graph API的方式实现系统托管标识或Azure Entra应用的连接:
- 系统托管标识方案:
- 为Logic App的系统托管标识授予Microsoft Graph的
ChatMessage.Send应用权限(需管理员同意)。 - 在Logic App中添加
HTTP操作,使用托管标识获取Graph API的访问令牌,再调用POST /chats/{chat-id}/messages接口发送消息。
- 为Logic App的系统托管标识授予Microsoft Graph的
- Azure Entra应用方案:
- 在Azure Entra ID中创建应用注册,授予
ChatMessage.Send应用权限(需管理员同意)。 - 在Logic App中通过客户端凭证流获取Graph API的访问令牌,再调用对应接口完成消息发送。
- 在Azure Entra ID中创建应用注册,授予
2. 用户账号连接的生产环境授权问题
若使用用户账号建立连接:
- 设计时完成一次授权后,连接默认会长期有效,但存在失效场景:用户账号密码过期、MFA配置变更、账号被撤销Teams权限或账号被删除。
- 建议使用专用服务账号(而非个人用户账号),这类账号通常配置更长的密码有效期,且不受员工离职等个人因素影响,能大幅降低重新授权的频率。
内容的提问来源于stack exchange,提问作者user1044169
相关产品推荐
相关产品推荐

