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

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

用于应用服务身份验证的管理 API 有两个版本。 Azure 门户中的身份验证体验需要 V2 版本。 在进行一些更改后,已使用 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,可以使用 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 以获得最新版本。 若要确定 Azure Functions 应锁定到的版本,请参阅 Azure Functions 运行时版本概述

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