摘要
2025/7/31 後,Azure Bot 不再支援 Multi Tenant App,導致 Teams Bot 發送訊息時可能回傳 401 Unauthorized 錯誤。本文說明原因與解決方法。
問題描述
最近在建立 Teams Bot 後,透 Bot App 發送訊息給使用者時,會發生 401 Unauthorized 的錯誤。錯誤訊息如下:
1 | Request failed with status code 401 |
環境說明
Teams Bot 是透過在 Portal Microsoft Entra ID 中的 App 身份來發送訊息,
以往我們都是先在 App registrations 中註冊 App (設定為 Multitenant),
然後在Azure Bot中設定Microsoft App ID,
在裡面的Type of App也一併設定成Multi Tenant,
再選擇前面建立的 App。
問題分析
最近在Azure Bot中的Type of App卻只剩下Single Tenant及User-Assigned Managed Identity,
Multi Tenant不見了!!! 如下圖:

而在Register a bot with Azure中有備註
Multi-tenant bot 在 2025/7/31 後就不能用了,如果在這之前建立的一樣可以用,但在 2025/7/31 後就不能用了~~
Multi Tenant App它取得 Token 的 URL 是 https://login.microsoftonline.com/botframework.com/oauth2/v2.0/token
,
Single Tenant App它取得 Token 的 URL 是 https://login.microsoftonline.com/${tenantId}/oauth2/v2.0/token
所以拿 Multi Tenant的 Token 去送訊息自然就會驗證錯誤,然後回401的錯誤。
所以2025/7/31之後 App 就建立要建立為Single Tenant哦~
目前發現,不管是 Single Tenant or Multi Tenant ,只要是Single Tenant的 Token 就可以順利發送訊息。
結論
2025/7/31 後,Azure Bot 必須使用 Single Tenant App。遇到 401 錯誤時,請檢查 Token 是否為 Single Tenant 的 Token。