适用于: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 机器人卡。
选择创建。
在必填字段中输入值,并检查和更新设置。
在“项目详细信息”下提供信息。 选择机器人是具有全局数据驻留还是本地数据驻留。 有关详细信息,请参阅 Azure AI 机器人服务中的区域化。
在“Microsoft 应用 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 服务资源(Web 应用),并且机器人是用户分配的托管标识应用程序,则可能需要更新机器人的应用程序服务:
转到机器人 Web 应用的“应用程序服务”边栏选项卡。
在“设置”下选择“标识”。
在“标识”边栏选项卡上,选择“用户分配”选项卡和“添加”(+)。
在 “添加用户分配的托管标识 ”边栏选项卡上:
选择订阅。
对于用户分配的托管标识,请选择机器人的托管标识。 如果自动生成托管标识,它将与机器人同名。
选择“添加”以将此标识用于机器人。
若要获取应用或租户 ID
若要获取机器人的应用或租户 ID:
转到机器人的“Azure 机器人”资源边栏选项卡。
转到机器人的“配置”边栏选项卡。
在此边栏选项卡中,可以复制机器人的“Microsoft 应用 ID”或“应用租户 ID”。
若要生成新密码
单租户和多租户机器人具有某些操作所需的应用机密或密码。 Azure AI 机器人服务会隐藏机器人机密。 但是,机器人的应用程序服务资源的所有者可以生成新密码:
转到机器人的“Azure 机器人”资源边栏选项卡。
转到机器人的“配置”边栏选项卡。
选择 Microsoft 应用 ID 旁边的管理,转到应用程序服务的证书 + 机密边栏选项卡。
按照边栏选项卡上的说明创建新的客户端密码,并将值记录在安全的位置。
手动应用注册
发生以下情况时需要手动注册:
- 你无法在组织中注册,需要另一方为你正在生成的机器人创建应用 ID。
- 你需要手动创建自己的应用 ID 和密码。
更新机器人
若要更新机器人的配置文件以包含其应用 ID 和密码,请参阅如何配置机器人注册设置中的应用 ID 和密码。
其他信息
有关 Azure 应用程序的一般信息,请参阅以下文章。
| Subject | 文章 |
|---|---|
| 应用注册 | 快速入门:将应用程序注册到 Microsoft 标识平台 |
| 托管标识 | 什么是 Azure 资源托管标识? |
| 单租户应用和多租户应用 | Microsoft Entra ID 中的租户 |