指定页面上的IIS MVC / WCF证书身份验证

时间:2017-08-08 06:56:44

标签: c# asp.net-mvc wcf authentication iis

我面临的问题是我只希望客户端(最终用户)在MVC / WCF应用程序中的指定页面上呈现证书。 当我设置IIS选项"客户端证书=接受"浏览时网站总是需要证书,在将选项设置为"必需"时,不应该这样。 ? 谷歌搜索一段时间,但web.config配置覆盖IIS证书检查,只在某些页面上进行证书检查不会产生很多结果。 以简化的方式,我想要完成的是:

  1. 用户浏览主页
  2. 阅读一些新闻文章
  3. 转到需要身份验证的页面
  4. 让用户/客户端出示证书
  5. 在这里,我将以编程方式对证书进行一些检查(这一点我已经解决了)
  6. 我没有提供任何代码,因为我没有,我拥有的只是IIS中的证书选项。

1 个答案:

答案 0 :(得分:0)

找出答案。 位置标记和applicationHost.config允许覆盖“访问”部分

的applicationHost.config

                <section name="access" overrideModeDefault="Allow" />

应用程序web.config

<location path="PathToSvcFile.svc">
<system.webServer>
  <security>
    <authentication>
      <anonymousAuthentication enabled="true"/>
    </authentication>
    <access sslFlags="Ssl, SslNegotiateCert"/>
  </security>
</system.webServer>