【问题标题】:Client certificate per endpoint每个端点的客户端证书
【发布时间】:2019-01-22 01:18:42
【问题描述】:

我想为某个端点配置一个自签名客户端证书。

我上传了 PFX,复制了指纹并在“入站处理”部分的 <base/> 下添加了以下行:

 <policies>
   <inbound>
      <base />
      <authentication-certificate thumbprint="THUMBPRINT" />
   </inbound>
   <backend>
      <base />
   </backend>
   <outbound>
      <base />
   </outbound>
   <on-error>
      <base />
   </on-error>
</policies>

如果我转到浏览器并访问端点,我会看到正在使用站点范围的 SSL 证书,而不是该特定端点的自签名证书。

我尝试在自定义域部分的“代理”下添加它,但它被 API 的“Web 服务 URL”中域的应用服务中的 SSL 证书覆盖。

有什么想法吗?

【问题讨论】:

  • 您的问题中缺少太多内容,无法给出任何答案。您能否为问题添加更多细节?就像你的设置看起来如何,你调用了哪些端点,你如何调用它们等等。现在真的不清楚你想做什么,因为“返回证书”可能意味着什么。
  • @VitaliyKurokhtin 我将 REST API 作为应用服务托管。我有位于 API 和调用客户端之间的网关。我想为一个端点(使用 REST 调用)返回一个自签名 SSL 证书,并为其他端点返回应用服务的默认 SSL 证书。要回答您的问题,我认为名称并不重要,但我们称之为 /messages/get 需要返回自签名证书,其余需要返回应用服务证书
  • 似乎将身份验证证书添加到出站可能有效,但我无法添加它。

标签: azure-api-management


【解决方案1】:

authentication-certificate 是一种允许 APIM 使用证书对后端服务进行身份验证的策略,而不是对客户端调用 APIM 的身份验证。由于您在浏览器中进行测试,我假设您想使用自定义证书设置自定义域,请参见此处:https://docs.microsoft.com/en-us/azure/api-management/configure-custom-domain

【讨论】:

  • 非常感谢!我会看看。 “Inbound Processing”和“Backend”中的“authentication-certificate”有什么区别?
  • 另外,根据链接的文档,我在“代理”部分上传了 SSL 证书,但它被应用服务 SSL 设置中的 SSL 证书覆盖
  • authentication-certificate - 是一种将客户端证书应用于正在进行的请求的策略。入站、出站、后端 - 策略文档部分。 docs.microsoft.com/en-us/azure/api-management/… 不确定 SSL 证书到底有什么问题。也许更详细地更新问题?
  • 您正在为 APIM 代理配置自签名 SSL 证书。但后来你指的是应用服务/网站中的 SSL 证书!您是否尝试从 APIM 更改后端证书
  • @JJ 我想为特定端点返回一个自签名 SSL 证书。然而,返回的 SSL 证书是安装在应用服务上的 SSL 证书,而不是 APIM 代理上的证书。如何在 APIM 代理上返回 SSL 证书?
猜你喜欢
  • 2016-01-27
  • 2015-09-06
  • 2017-01-02
  • 2017-06-08
  • 2010-09-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-10-25
相关资源
最近更新 更多