You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在不使用Azure Bot Service的情况下为Bot Framework v4的Teams机器人添加认证?

无需Azure Bot Service为Teams机器人添加Azure AD认证的方案

是的,可以在不依赖Azure Bot Service的情况下,为基于Bot Framework SDK v4的Teams机器人配置Azure AD认证,以下是具体实现步骤:

一、Azure门户端配置

  • 在Azure Active Directory中注册独立的应用程序:
    1. 进入Azure门户,找到Azure Active Directory,选择「应用注册」>「新注册」。
    2. 填写自定义应用名称,根据需求选择账户支持类型(如「任何组织目录中的账户和个人Microsoft账户」),重定向URI暂时留空,完成注册。
  • 获取核心配置参数:
    • 注册完成后,复制应用程序(客户端)ID,这将作为代码中的MicrosoftAppId。
    • 生成客户端密码:进入「证书和密码」>「新客户端密码」,设置有效期后生成并复制密码值,这就是MicrosoftAppPassword(注意该值仅显示一次,需妥善保存)。
  • 配置Teams相关权限(按需):
    • 进入「API权限」>「添加权限」>选择「Microsoft Graph」,添加所需的委派权限(如User.Read),若需要管理员统一授权,点击「授予管理员同意」。

二、代码层面配置

  • 更新appsettings.json:
    {
      "MicrosoftAppId": "你的应用客户端ID",
      "MicrosoftAppPassword": "你的客户端密码",
      "AzureAd": {
        "ClientId": "你的应用客户端ID",
        "ClientSecret": "你的客户端密码",
        "Authority": "https://login.microsoftonline.com/common"
      }
    }
    
  • 配置认证中间件(以C#为例):
    在Program.cs中添加认证服务:
    builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
        .AddMicrosoftIdentityWebApi(builder.Configuration.GetSection("AzureAd"));
    
    同时配置CloudAdapter,确保使用正确的凭据验证请求:
    var credentialProvider = new ConfigurationCredentialProvider(builder.Configuration);
    var adapter = new CloudAdapter(credentialProvider);
    
  • 实现用户认证流程:
    使用OAuthPrompt发起用户登录请求,在对话逻辑中集成:
    var oauthPrompt = new OAuthPrompt(
        nameof(OAuthPrompt),
        new OAuthPromptSettings
        {
            ConnectionName = "AzureADv2",
            Text = "请登录以继续操作",
            Title = "用户登录"
        });
    
    最后回到Azure应用注册页面,添加重定向URI为https://你的公网端点/api/messages(本地测试可使用ngrok生成的公网地址),确保认证回调能被机器人接收。

三、本地部署注意事项

  • 本地服务需通过ngrok等工具暴露公网地址,Teams需要能访问到机器人的消息端点,同时认证回调也依赖公网地址。
  • 确保机器人的/api/messages端点能正确处理Teams的请求,且认证中间件能验证请求签名(依赖MicrosoftAppId和MicrosoftAppPassword)。
  • 若仅需机器人自身身份验证(如调用Teams Graph API),可直接使用客户端ID和密码获取令牌,无需集成OAuthPrompt。

内容的提问来源于stack exchange,提问作者Lukas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 13:15:39