Iis-7

在 IIS 7.5 中使用客戶端證書時出現 401

  • July 6, 2013

我正在嘗試配置託管在 IIS 7.5 下的網站,以便對特定位置的請求需要客戶端證書身份驗證。使用我目前的設置,當使用我的客戶端證書訪問該位置時,我仍然會收到“401 - 未經授權:由於憑據無效而拒絕訪問”。

這是設置內容的 web.config 片段:

<location path="MyWebService.asmx">
   <system.webServer>
     <security>
       <access sslFlags="Ssl, SslNegotiateCert"/>
       <authentication>
         <windowsAuthentication enabled="false"/>
         <anonymousAuthentication enabled="false"/>
         <digestAuthentication enabled="false"/>
         <basicAuthentication enabled="false"/>
         <iisClientCertificateMappingAuthentication enabled="true" oneToOneCertificateMappingsEnabled="true">
           <oneToOneMappings>
             <add enabled="true" certificate="MIICFDCCAYGgAwIBAgIQ+I0z6z8OWqpBIJt2lJHi6jAJBgUrDgMCHQUAMCQxIjAgBgNVBAMTGURldiBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMTAxMjI5MjI1ODE0WhcNMzkxMjMxMjM1OTU5WjAaMRgwFgYDVQQDEw9kZXYgY2xpZW50IGNlcnQwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANJi10hI+Zt0OuNr6eduiUe6WwPtyMxh+hZtr/7eY3YezeJHC95Z+NqJCAW0n+ODHOsbkd3DuyK1YV+nKzyeGAJBDSFNdaMSnMtR6hQG47xKgtUphPFBKe64XXTG+ueQHkzOHmGuyHHD1fSli62i2V+NMG1SQqW9ed8NBN+lmqWZAgMBAAGjWTBXMFUGA1UdAQROMEyAENGUhUP+dENeJJ1nw3gR0NahJjAkMSIwIAYDVQQDExlEZXYgQ2VydGlmaWNhdGUgQXV0aG9yaXR5ghB6CLh2g6i5ikrpVODj8CpBMAkGBSsOAwIdBQADgYEAwwHjpVNWddgEY17i1kyG4gKxSTq0F3CMf1AdWVRUbNvJc+O68vcRaWEBZDo99MESIUjmNhjXxk4LDuvV1buPpwQmPbhb6mkm0BNIISapVP/cK0Htu4bbjYAraT6JP5Km5qZCc0iHZQJZuch7Uy6G9kXQXaweJMiHL06+GHx355Y="/>
           </oneToOneMappings>
         </iisClientCertificateMappingAuthentication>
       </authentication>
     </security>
   </system.webServer>
</location>

我在 Web 瀏覽器中使用的客戶端證書與我在 web.config 中放置的證書相匹配。我在這裡做錯了什麼?

當我在應用程序配置中添加映​​射時,我遇到了同樣的錯誤。我看到這篇文章http://blogs.msdn.com/b/rakkimk/archive/2009/07/08/iis7-configuring-iisclientcertificatemappingauthentication.aspx並將我的映射條目移動到網站級別,它們被下面的應用程序繼承我只在應用程序級別啟用了 IISClientCertificateAuthentication(在網站級別禁用)並且它開始工作。

嘗試將映射移動到網站級別的配置,並在應用程序級別啟用客戶端證書身份驗證。祝你好運,新年快樂!

引用自:https://serverfault.com/questions/217243