你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure Functions 是服务连接器支持的计算服务之一。 建议使用绑定将 Azure Functions 与其他服务连接。 还可以使用客户端 SDK。 本文旨在帮助你了解:
- 服务连接器与 Azure Functions 绑定之间的关系。
- 服务连接器使用绑定或 SDK 将 Functions 连接到其他 Azure 服务的过程。
- 服务连接器和用户在每种应用场景中分别承担的责任。
先决条件
- 本指南假定你了解 服务连接器的基本概念。
- 本指南假设你了解 Azure Functions 开发人员指南和如何将函数连接到 Azure 服务中所述的概念。
服务连接器和 Azure Functions 绑定
Azure Functions 中的绑定
绑定是 Azure Functions 使用的概念。 它旨在提供一种将函数连接到服务的简单方法,而无需在函数代码中使用客户端 SDK。
绑定可支持输入、输出和触发器。 使用绑定可以配置与服务的连接,以便 Functions 主机能够处理数据访问。 有关详细信息,请参阅 Azure Functions 触发器和绑定概念。
Azure Functions 绑定支持机密(连接字符串)和基于标识的身份验证。
服务连接器
服务连接器是一项 Azure 服务,可帮助开发人员轻松地将计算服务连接到目标后备服务。 Azure Functions 是服务连接器支持的计算服务之一。
函数绑定更偏向于一个逻辑抽象概念,而服务连接器是一种可直接操作的 Azure 服务。 它为连接(如create、delete和validate healthlist configurations)的整个生命周期提供 API。
服务连接器还支持机密/连接字符串和基于标识的身份验证类型。
Azure Functions 绑定中的连接
在 Azure Functions 绑定中,该 connection 属性在函数文件夹中的绑定文件中定义。 此文件通常是 function.json 文件。 它定义绑定运行时用来向目标服务进行身份验证的应用设置名称或前缀。
服务连接器中的连接
服务连接器中的 connection 是指属于服务连接器的特定 Azure 资源。
Azure Functions 绑定使用的 connection 与服务连接器使用的 configuration name 相对应。 配置名称是指服务连接器保存到计算服务的配置中的应用设置密钥名称。
使用服务连接器将 Azure Functions 连接到其他云服务
服务连接器可减少使用绑定或 SDK 将 Azure Functions 连接到云服务所需的工作量。 它接管云资源配置,例如应用设置、网络、标识和权限分配。 用户可以专注于函数业务逻辑。 以下部分介绍服务连接器如何通过不同的连接机制和身份验证方法帮助简化函数连接。
Binding
- 机密/连接字符串
| Scenario | 操作 | Description | 没有服务连接器 | 使用服务连接器 |
|---|---|---|---|---|
| 本地项目 | 添加绑定 | 根据目标服务类型和绑定类型(输入/输出/触发器),在函数中添加绑定。 | 用户 | 用户 |
| 使用绑定 | 设置在 local.settings.json 中用于身份验证的连接字符串,并更改函数代码以使用绑定中定义的变量。 |
用户 | 用户 | |
| 云资源 | 配置应用设置 | 在函数资源的配置中将连接字符串配置为应用设置。 | 用户 | 服务连接器 |
| 配置网络 | 确保目标服务的网络配置允许从函数资源进行访问。 | 用户 | 服务连接器 |
- 基于标识的身份验证
| Scenario | 操作 | Description | 没有服务连接器 | 使用服务连接器 |
|---|---|---|---|---|
| 本地项目 | 添加绑定 | 根据目标服务类型和绑定类型(输入/输出/触发器),在函数中添加绑定。 | 用户 | 用户 |
| 使用绑定 | 设置在 local.settings.json 中用于身份验证的连接字符串,并更改函数代码以使用绑定中定义的变量。 |
用户 | 用户 | |
| 云资源 | 配置应用设置 | 配置 Azure 函数的标识设置,例如服务终结点。 | 用户 | 服务连接器 |
| 配置网络 | 确保目标服务的网络配置允许从函数资源进行访问。 | 用户 | 服务连接器 | |
| 配置身份 | 使用系统标识进行身份验证时,请确保启用系统标识。 | 用户 | 服务连接器 | |
| 权限分配 | 分配标识所需的角色,以便它能够访问目标服务。 | 用户 | 服务连接器 |
将服务连接器与函数绑定配合使用时,请特别注意服务连接器配置的函数密钥名称。 请确保它与绑定文件的 connection 属性中定义的密钥名称相同。 如果不同,请更改绑定文件中的名称,或使用服务连接器的 customize keys 功能自定义服务连接器的默认配置名称。
SDK
- 机密/连接字符串
| Scenario | 操作 | Description | 没有服务连接器 | 使用服务连接器 |
|---|---|---|---|---|
| 本地项目 | 添加依赖项 | 根据目标服务和运行时添加依赖项包。 | 用户 | 用户 |
| 启动 SDK 客户端 | 在 local.settings.json 中设置用于身份验证的连接字符串。 使用连接字符串启动目标服务 SDK。 |
用户 | 用户 | |
| 云资源 | 配置应用设置 | 在函数的配置中将连接字符串配置为应用设置。 | 用户 | 服务连接器 |
| 配置网络 | 确保目标服务的网络配置允许从函数资源进行访问。 | 用户 | 服务连接器 |
- 基于标识的身份验证
| Scenario | 操作 | Description | 没有服务连接器 | 使用服务连接器 |
|---|---|---|---|---|
| 本地项目 | 添加依赖项 | 根据目标服务和运行时添加依赖项包。 | 用户 | 用户 |
| 启动 SDK 客户端 | 在 local.settings.json 中设置用于身份验证的连接字符串。 使用连接字符串启动目标服务 SDK。 |
用户 | 用户 | |
| 云资源 | 配置应用设置 | 在函数的配置中将连接字符串配置为应用设置。 | 用户 | 服务连接器 |
| 配置网络 | 确保目标服务的网络配置允许从函数资源进行访问。 | 用户 | 服务连接器 | |
| 配置身份 | 使用系统标识进行身份验证时,请确保启用系统标识。 | 用户 | 服务连接器 | |
| 权限分配 | 分配标识所需的角色,以便它能够访问目标服务。 | 用户 | 服务连接器 |
后续步骤
了解如何集成不同的目标服务并了解其配置设置和身份验证方法。