管理应用服务身份验证的 API 和运行时版本

本文介绍如何自定义应用服务中的内置身份验证和授权的 API 和运行时版本。

用于应用服务身份验证的管理 API 有两个版本。 V2 版本是 Azure 门户“身份验证”体验的必备项。 已在使用 V1 API 的应用可在进行一些更改后升级到 V2 版本。 具体而言,必须将机密配置移至槽粘滞应用程序设置。 这可以从应用门户的“身份验证”部分自动完成。

将应用固定到特定身份验证运行时版本

启用身份验证/授权时,会将平台中间件注入 HTTP 请求管道,如功能概述中所述。 作为平台例常更新的一部分,此平台中间件定期更新新功能和改进。 默认情况下,Web 或函数应用在此平台中间件的最新版本上运行。 这些自动更新始终向后兼容。 但在极少情况下此自动更新引入 Web 或函数应用的运行时问题,此时可以暂时回滚到以前的中间件版本。 本文介绍如何将应用临时固定到特定版本的身份验证中间件。

自动和手动版本更新

可以通过设置应用的 runtimeVersion 设置,将应用固定到平台中间件的特定版本。 应用始终在最新版本上运行,除非选择将其显式固定回特定版本。 一次支持几个版本。 如果固定到不再受支持的无效版本,应用将改用最新版本。 若要始终运行最新版本,将 runtimeVersion 设为 ~1。

查看和更新当前运行时版本

可以更改应用使用的运行时版本。 新的运行时版本应在重启应用后生效。

查看当前运行时版本

可以使用 Azure CLI 或应用中的内置版本 HTTP 终结点之一来查看平台身份验证中间件的当前版本。

通过 Azure CLI

使用 Azure CLI 通过 az webapp auth show 命令查看当前中间件版本。

az webapp auth show --name <my_app_name> \
--resource-group <my_resource_group>

在此代码中,用应用名称替换 <my_app_name>。 还使用应用的资源组名称替换 <my_resource_group>

你将在 CLI 输出中看到 runtimeVersion 字段。 它类似于以下示例输出,为了清晰起见,该输出已被截断:

{
  "additionalLoginParams": null,
  "allowedAudiences": null,
    ...
  "runtimeVersion": "1.3.2",
    ...
}
使用版本终结点

还可点击应用上的 /.auth/version 终结点来查看应用运行所在的当前中间件版本。 它类似于以下示例输出:

{
"version": "1.3.2"
}

更新当前运行时版本

使用 Azure CLI,可以通过 az webapp auth update 命令更新应用中的 runtimeVersion 设置。

az webapp auth update --name <my_app_name> \
--resource-group <my_resource_group> \
--runtime-version <version>

<my_app_name> 替换为你的应用的名称。 还使用应用的资源组名称替换 <my_resource_group>。 另外,将 <version> 替换为 1.x 运行时的有效版本,或替换为 ~1 获取最新版本。 请参阅不同运行时版本的发行说明,以便确定要固定到的版本。

可以在执行 az login 登录后使用 Azure CLI 在本地执行此命令。