要上传到 Azure APIM 的客户端证书类型?

时间:2021-03-24 23:39:58

标签: azure azure-functions azure-api-management client-certificates

我有一个以 Azure API 管理 (APIM) 为前端的 HTTP 触发的 Azure 函数。

  • 客户端证书在 Azure 功能 级别设置为 Require

enter image description here

  • APIM级别:

enter image description here

我需要将客户端证书(公共 客户端证书)添加到某种“信任库”。看起来 APIM 的“客户端证书”页面相当于一个 Trust Store。

enter image description here

问题是:APIM 在这里寻找什么类型的客户端证书?

  • 应该只是客户端公共证书,对吗?
  • 我不应该将这些存储在 Azure Key Vault 中,因为它们不包含私钥
  • 我只需要检查请求中的客户端证书是否来自“可信来源”,以防止请求到达我的应用程序代码(如果它们是未知客户端)。

1 个答案:

答案 0 :(得分:1)

我认为 this doc 对在 azure apim 中启用客户端证书身份验证有一个生动的解释。在这里总结一下,您不必上传证书文件,因为您可以将策略中的3500 设置为类似

Thumbprint

如果你上传证书,你可以像这样设置策略:

<when condition="@(context.Request.Certificate == null 
       || context.Request.Certificate.Thumbprint != "456AAB1833DF842152605DF6C2B1DB2BBA29380D"
       || context.Request.Certificate.NotAfter<DateTime.Now)">

这是有关 apim 客户端证书的相关 official docs