【问题标题】:Getting "403 Invalid client certificate" in Azure APIM and also from postman在 Azure APIM 和邮递员处获取“403 无效客户端证书”
【发布时间】:2020-05-28 08:06:57
【问题描述】:

所以我关注这个链接:https://docs.microsoft.com/en-gb/azure/api-management/api-management-howto-mutual-certificates-for-clients。我添加了两个策略-

1)检查指纹(对于包含证书的传入请求

<choose>
    <when condition="@(context.Request.Certificate == null || !context.Request.Certificate.Verify() || context.Request.Certificate.Thumbprint != "DESIRED-THUMBPRINT-IN-UPPER-CASE")" >
        <return-response>
            <set-status code="403" reason="Invalid client certificate" />
        </return-response>
    </when>
</choose>

2)检查上传到 API 管理的证书的指纹(我在 APIM 的“证书”部分上传了一个自签名证书

<choose>
<when condition="@(context.Request.Certificate == null || !context.Request.Certificate.Verify()  || !context.Deployment.Certificates.Any(c => c.Value.Thumbprint == context.Request.Certificate.Thumbprint))" >
    <return-response>
        <set-status code="403" reason="Invalid client certificate" />
    </return-response>
</when>

现在,当我尝试在 azure 中从 APIM 发送 get 请求时,我遇到了“403 invalid client certificate”的错误消息。在邮递员中,我也添加了证书,但是在发送 get 时遇到了同样的错误请求。

我使用 openssl 制作了自签名证书并将其转换为 .key、.crt 和 .pfx。我也阅读了其他相关主题,但我没有找到任何解决此问题的方法。我不知道我做错了还是我我错过了一些东西。请帮我解决这个问题。谢谢。

【问题讨论】:

    标签: azure ssl postman azure-api-management client-certificates


    【解决方案1】:

    来自您发布的文档链接:

    您的证书是自签名的,因此不受信任。尝试将其添加到 APIM 中的 CA 证书部分。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-06-29
      • 1970-01-01
      • 2021-06-21
      • 2019-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多