Azure 应用服务中客户端证书模式的 "Allow" 选项的用途是什么?

What is the purpose of the "Allow" option of the client certificate mode in an Azure App Service?

我正在尝试通过添加 .pfx 证书来保护我的 Azure Web 应用程序。

在 Azure 门户中,我添加了我的 pfx 文件: App Service -> TLS/SSL settings -> Private Key Certificates (.pfx) -> Upload Certificate

然后在设置下blade: Configuration -> General Settings -> Incoming client certificates -> Client certificate mode 我们有 3 个选项:要求、允许和忽略。

那么 Allow 选项的目的是什么? 我没有找到任何关于它的文献。

Allow 选项表示应用程序将请求证书,但如果没有提供证书,请求也不会失败。这与 Ignore 的不同之处在于忽略选项首先不会请求证书。

“允许” 选项允许使用证书和 AAD 令牌对您的应用进行身份验证。

选择“允许”时,该应用程序将通过启用身份验证来请求证书。 但是当没有提供证书时,应用程序也会通过请求 - 通过使用令牌启用身份验证。

请注意,代码负责验证此令牌对 AAD 有效(就像验证证书一样)。

其他选项:

  • "require" 将在未提供证书的 AppService 级别阻止请求,因此它不会启用使用令牌。
  • “忽略” 根本不需要证书,因此它不会启用使用证书。

所以“允许”解决了这个问题并允许应用启用两者的身份验证。

在此处阅读更多内容:Documentation