适用于:SDK v4
如果当前未在 Azure 中托管机器人,仍可在 Azure 中使用它,并可使用 Azure 将机器人连接到通道。 为此,请在 Azure 中输入托管机器人的网页地址。
本文演示如何使用将此类机器人注册到 Azure AI 机器人服务。
重要
仅当机器人未托管在 Azure 中时,您才需要注册它。 使用 Azure CLI 创建的机器人已注册到 Azure AI 机器人服务。
可以通过多种方式在 Azure 中管理机器人的标识:
- 作为 用户分配的托管标识,因此无需手动管理凭据。
- 作为单租户应用。
- 作为多租户应用。
注释
- Bot Framework SDK for C#、JavaScript 和 Python 中提供了对 用户分配的托管标识 和 单租户 应用类型的支持。
- 其他 SDK 语言、Bot Framework Composer、Bot Framework Emulator 或开发隧道 不支持 这些应用类型。
重要
- 多租户机器人创建将在 2025 年 7 月 31 日之后弃用。
- 现有的多租户机器人将继续正常运行,但在此日期之后将不再支持新的多租户机器人创建。
- 若要确保持续支持,请今后使用 单租户 或 用户分配的托管标识 。
支持的应用类型
| 应用类型 | 支持在 |
|---|---|
| 用户分配的托管标识 | Azure AI 机器人服务;C#、JavaScript 和 Python SDK |
| 单租户 | Azure AI 机器人服务;C#、JavaScript 和 Python SDK |
| 多租户 (已弃用 - 于 2025 年 7 月 31 日结束) | Azure AI 机器人服务;所有 Bot Framework SDK 语言;Composer;Emulator;Dev Tunnels |
本文不介绍如何创建或部署要注册的机器人。 有关详细信息,请参阅:
- 快速入门:创建和测试基本代理快速入门
- 部署基本机器人教程
创建资源
创建 Azure 机器人资源,以便将机器人注册到 Azure AI 机器人服务。
提示
无法创建新的 Web 应用机器人和机器人通道注册资源;但是,已配置和部署的任何此类现有资源将继续有效。 使用(从 SDK 版本 4.14.1.2 或更高版本创建的)VSIX 或 Yeoman 模板创建的机器人包含将生成 Azure 机器人资源的 ARM 模板。
转到 Azure 门户。
在右窗格中,选择“创建资源”。
在搜索框中,键入
bot,然后按 Enter。选择 Azure Bot 卡片。
选择创建。
在必填字段中输入值,并检查和更新设置。
在“项目详细信息”下提供信息。 选择您的机器人采用全局还是本地数据驻留。 有关详细信息,请参阅 Azure AI 机器人服务中的区域化。
在Microsoft App ID下方提供信息。 选择如何在 Azure 中管理机器人标识,以及是创建新的标识还是使用现有标识。
选择 查看并创建。
验证通过后,选择“创建”。
部署完成后,选择转到资源。 你应会看到机器人和相关资源列在你所选的资源组中。
如果还没有 Bot Framework SDK,请选择“从 GitHub 下载”,了解如何使用首选语言的包。
现在,你已经准备好使用 Bot Framework SDK 生成机器人。
提示
当 Azure 使用新的应用 ID 创建新的单租户或多租户 Azure 机器人资源时,它还会生成密码。
机器人标识信息
按照以下步骤将标识信息添加到机器人的配置文件。 文件因用于创建机器人的编程语言而异。
重要
- Bot Framework SDK 的 Java 版本仅支持 多租户 机器人。
- C#、JavaScript 和 Python 版本支持所有三种应用程序类型来管理机器人的标识。
| 语言 | 文件名 | 备注 |
|---|---|---|
| C# | appsettings.json | 支持所有三种应用程序类型来管理机器人的标识。 |
| JavaScript | .env | 支持所有三种应用程序类型来管理机器人的标识。 |
| Java | application.properties | 仅支持多租户机器人。 |
| Python | config.py | 支持所有三种应用程序类型来管理机器人的标识。 |
需要添加的标识信息取决于机器人的应用程序类型。 提供配置文件中的以下值。
适用于 C#、JavaScript 和 Python 机器人。
| 属性 | 值 |
|---|---|
MicrosoftAppType |
UserAssignedMSI |
MicrosoftAppId |
用户分配的托管标识的客户端 ID。 |
MicrosoftAppPassword |
不适用。 对于用户分配的托管标识机器人,请将此项留空。 |
MicrosoftAppTenantId |
用户分配的托管标识的租户 ID。 |
若要更新您的应用服务
如果你有一个供机器人使用的现有 App Service 资源(Web 应用),并且你的机器人是一个用户分配的托管标识应用程序,则你可能需要更新机器人的 App Service:
转到机器人 Web 应用的“应用程序服务”边栏选项卡。
在设置下,选择身份。
在“标识”边栏选项卡上,选择“用户分配”选项卡和“添加”(+)。
在 “添加用户分配的托管标识 ”边栏选项卡上:
选择订阅。
对于用户分配的托管标识,请选择适用于你的机器人的托管标识。 如果系统为你自动生成了托管标识,其名称将与机器人名称相同。
选择“添加”以将此标识用于机器人。
若要获取应用程序或租户 ID
若要获取机器人的应用 ID 或租户 ID:
转到你的机器人对应的“Azure 机器人”资源边栏。
转到机器人的“配置”边栏选项卡。
在此边栏选项卡中,可以复制机器人的“Microsoft 应用 ID”或“应用租户 ID”。
若要生成新密码
单租户和多租户机器人都有在执行某些操作时需要使用的应用密钥或密码。 Azure AI 机器人服务会隐藏你的机器人密码。 但是,机器人的应用程序服务资源的所有者可以生成新密码:
转到你的机器人对应的 Azure 机器人资源边栏。
转到机器人的“配置”边栏选项卡。
选择 Microsoft 应用 ID 旁边的管理,转到应用程序服务的证书 + 机密边栏选项卡。
按照该面板上的说明创建一个新的客户端密码,并将该值记录在安全的地方妥善保存。
手动应用注册
发生以下情况时需要手动注册:
- 你无法在组织内完成注册,因此需要由其他方为你正在构建的机器人创建应用 ID。
- 你需要手动创建自己的应用 ID 和密码。
更新机器人
若要更新机器人的配置文件以包含其应用 ID 和密码,请参阅如何配置机器人注册设置中的应用 ID 和密码。
其他信息
有关 Azure 应用程序的一般信息,请参阅以下文章。
| 主题 | 文章 |
|---|---|
| 应用注册 | 快速入门:将应用程序注册到 Microsoft 标识平台 |
| 托管标识 | 什么是 Azure 资源托管标识? |
| 单租户应用和多租户应用 | Microsoft Entra ID 中的租户 |