【问题标题】:Set up Azure Web App to accept client certificates设置 Azure Web App 以接受客户端证书
【发布时间】:2018-05-12 08:28:10
【问题描述】:

我有一个 ASP.NET MVC Web 应用程序,我将它作为 Web 应用程序部署到 Microsoft Azure。在该应用程序中,我有一些 Web API 端点,只有当用户拥有正确的证书和允许的指纹时才能访问这些端点。但是,我还有其他端点(当然还有网站),无需客户端证书即可访问。

我知道set up the Azure Web App to require client certificate through a HTTPS connection 是有可能的。但是,如果我进行上述 REST API 调用

ARMClient PUT 订阅/{订阅 ID}/resourcegroups/{资源组名称}/providers/Microsoft.Web/sites/{网站名称}?api-version=2015-04-01 @enableclientcert.json -verbose

这将导致只有那些用户可以访问我的站点并使用具有客户端证书的 Web API 端点。

如果我打开本地安装的 IIS 管理器,我将有一个选项来接受客户端证书,而不是要求它们,如下图所示:

我的问题是如何设置我的 Azure Web 应用程序以接受(不需要)客户端证书?我搜索了这个网站和许多其他论坛,但我找不到以这种方式设置 Web 应用程序的方法。

【问题讨论】:

    标签: c# asp.net-mvc azure azure-web-app-service client-certificates


    【解决方案1】:

    更新:

    我的问题是如何设置我的 Azure Web 应用程序以接受(不需要)客户端证书?

    现在好像 azure 不支持了。我还找到了support optional client certificates for TLS mutual auth 反馈。现在它正在由 Azure 团队进行审查。你也可以投票。

    我们也可以使用 IIS 管理器远程访问 Azure 网站进行设置,您可以从 blog 获取详细步骤。

    **先决条件** >在 Window 客户端操作系统上 - [用于远程管理的 IIS 管理器][3] >在 Windows Server 上 - 确保您已安装 IIS 管理控制台。 请参阅 http://www.iis.net/learn/install/installing-iis-7/installing-iis-on-windows-vista-and-windows-7 中的第 6 步 - “IIS 管理控制台”是必需的功能.

    【讨论】:

    • 感谢您的回答,我没有考虑过使用 IIS 管理器连接到 Azure Web 应用程序。但是,当我将站点设置为接受客户端证书时,我无法再通过 https 访问我的站点,因为我收到了 HTTP 500.0 - 内部服务器错误消息,其中包含以下相关的详细错误信息:详细错误信息:模块 IIS Web 核心通知BeginRequest 处理程序静态文件错误代码 0x80070005
    • 我已经更新了答案。好像现在azure不支持了
    • 谢谢,这似乎是一个问题......同时我正在考虑使用 OWIN 从请求数据中获取客户端证书。我可以看到一个名为“ssl.LoadClientCertAsync”的密钥,我可以用它来检索证书的值...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-10-23
    • 2018-09-16
    • 2021-02-27
    • 1970-01-01
    • 2010-09-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多