你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
本文介绍如何集成 API 管理实例,以便实例的 API 在 API 中心 清单中持续保持最新。
Tip
本文介绍如何从 API 中心集成 API 管理实例。 或者,直接从 API 管理实例快速设置集成。 在实例的左侧菜单中,在 API 下,选择 API 中心,然后在订阅中选择目标 API 中心以将 API 同步到。
关于集成 API 管理实例
尽管可以使用 Azure CLI 按需将 API 从 Azure API 管理 导入 Azure API 中心,但集成 API 管理实例可以启用持续同步,以便 API 清单保持最新状态。 Azure API 中心还可以从包括 Amazon API 网关在内的源同步 API。
在集成 API 管理实例作为 API 源时,会发生以下情况:
- API 管理实例中的所有 API 以及可选的 API 定义(规范)都添加到 API 中心库存中。 API 管理中的 MCP 服务器包含在添加到清单的 API 中。
- 在 API 中心配置 Azure API 管理类型的环境。
- 为 API 管理中的每个同步 API 定义创建关联的 部署 。
更改现有 API 的设置(例如,添加新版本)、创建新 API 或删除 API 时,API 管理 API 会自动同步到 API 中心。 此同步是从 API 管理到 Azure API 中心的单向同步,这意味着 API 中心内的 API 更新不会同步回 API 管理实例。
Note
- 集成 API 管理实例数(API 源)存在 限制 。
- 可以在虚拟网络中配置集成的 API 管理实例。
- API 管理中的 API 更新通常在几分钟内同步到 API 中心,但同步可能需要长达 24 小时。
- 如果你在集成期间选择了包含 API 定义的选项,那么 API 定义也会同步到 API 中心。
从 API 管理同步的实体
你可以在 API 中心中为同步的 API 添加或更新元数据属性和文档,以帮助利益干系人发现、了解和使用这些 API。 详细了解 Azure API 中心的内置和自定义元数据属性。
下表显示了可以在 Azure API 中心中修改的实体属性,以及根据 API 源中的值设置的属性。
| Entity | 可在 API 中心配置的属性 | 在集成 API 源中确定的属性 |
|---|---|---|
| API | 摘要 lifecycleStage termsOfService 许可 externalDocumentation customProperties |
title description kind |
| API 版本 | lifecycleStage | title 定义(如果已同步) |
| Environment | title description kind server.managementPortalUri 加入 customProperties |
server.type |
| Deployment | title description 服务器 状态 customProperties |
server.runtimeUri |
Note
同步到 Azure API 中心的实体的资源 ID 和系统 ID 是自动生成的,无法更改。
Prerequisites
Azure 订阅中的 API 中心。 如果尚未创建 API 中心,请参阅快速入门:创建 API 中心。
相同或不同订阅中的 Azure API 管理实例。 此实例必须位于同一目录中。
对于 Azure CLI:
在 Azure Cloud Shell 中使用 Bash 环境。 有关详细信息,请参阅 Azure Cloud Shell 入门。
如需在本地运行 CLI 参考命令,请安装 Azure CLI。 如果在 Windows 或 macOS 上运行,请考虑在 Docker 容器中运行 Azure CLI。 有关详细信息,请参阅如何在 Docker 容器中运行 Azure CLI。
如果使用的是本地安装,请使用 az login 命令登录到 Azure CLI。 要完成身份验证过程,请遵循终端中显示的步骤。 有关其他登录选项,请参阅 使用 Azure CLI 向 Azure 进行身份验证。
如果系统发出提示,则在首次使用时安装 Azure CLI 扩展。 有关扩展的详细信息,请参阅 使用和管理 Azure CLI 中的扩展。
运行az version命令,以查看已安装的版本和依赖库。 若要升级到最新版本,请运行az upgrade。
Note
az apic命令需要 Azure CLI 扩展apic-extension。 如果尚未使用az apic命令,则可以在运行第一个az apic命令时动态安装扩展,也可以手动安装扩展。 详细了解 Azure CLI 扩展。请参阅发行说明,了解
apic-extension中的最新更改和更新。 某些功能可能需要预览版或特定版本的扩展。Note
本文中的 Azure CLI 命令示例可以在 PowerShell 或 bash shell 中运行。 由于不同的变量语法,需要为两个 shell 提供单独的命令示例。
在 API 中心中启用托管标识
对于此场景,你的 API 中心使用托管标识来访问 Azure 资源。 根据你的需要,启用一个系统分配的托管标识或一个或多个用户分配的托管标识。
下面的示例展示了如何使用 Azure 门户或 Azure CLI 启用系统分配的托管标识。 概括而言,配置步骤与用户分配的托管标识类似。
为托管标识分配 API 管理服务读者角色
要允许导入 API,请在 API 管理实例中为 API 中心的托管身份分配 API 管理服务读者角色。 可以使用门户或 Azure CLI。
- 在门户中导航到 API 管理实例。
- 在左侧菜单中,选择“访问控制(IAM)”。
- 选择“+ 添加角色分配”。
- 在“添加角色分配”页面上,按如下所示设置值:
- 在“角色”选项卡上,选择“API 管理服务读者”。
- 在“成员”页上的“访问权限分配对象”中,选择“托管标识”>“+ 选择成员”。
- 在“选择托管标识”页上,选择你在上一部分中添加的 API 中心的系统分配托管标识。 单击“选择”。
- 选择“查看 + 分配”。
集成 API 管理实例
可以使用门户或 Azure CLI 集成 API 管理实例。
- 在门户中,导航到你的 API 中心。
- 在 “平台”下,选择 “集成”。
- 从 Azure API 管理中选择>”。
- 在 “集成 Azure API 管理服务 ”页中:
- 选择是同步 API 管理实例中的所有 API,还是仅同步 API 管理 工作区中的 API。
- 选择要集成的 订阅、 资源组和 Azure API 管理服务 。 如果只想从工作区同步 API,请在“选择工作区”中进行选择。
- 在 集成详细信息中,输入标识符。 如果尚未配置有权访问 API 管理实例的托管标识,请启用 “自动配置托管标识”并分配权限。 此选择会自动为 API 中心的系统分配的托管标识分配从 API 管理实例同步 API 所需的权限。
- 在 “环境详细信息”中,输入 环境标题 (名称)、 环境类型和可选 说明。
- 在 API 详细信息中:
- 为同步的 API 选择 生命周期 。 (将 API 添加到 API 中心后,可以更新 API 的该值。)
- (可选)选择是否使用同步的 API 包含 API 定义。
- 选择 创建。
API 管理实例被集成为 API 中心中的一个环境。 API 管理 API 已同步到 API 中心清单。
删除集成
在集成 API 源期间,你无法从 API 中心删除已同步的 API。 可以根据需要删除集成。 删除集成时:
- API 中心清单中同步的 API 会被删除
- 与 API 源关联的环境和部署会被删除
可以使用门户或 Azure CLI 删除集成。