Obtendo 401 ao usar o certificado de cliente com o IIS 7.5

4

Estou tentando configurar um site hospedado no IIS 7.5 para que as solicitações para um local específico exijam autenticação de certificado de cliente. Com a minha configuração atual, ainda recebo um "401 - Não autorizado: acesso negado devido a credenciais inválidas" ao acessar o local com meu certificado de cliente.

Aqui está o fragmento web.config que configura as coisas:

<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>

O certificado de cliente que estou usando no meu navegador corresponde ao que eu coloquei no web.config. O que estou fazendo errado aqui?

    
por Jacob 30.12.2010 / 00:31

2 respostas

0

Eu estava recebendo o mesmo erro quando adicionei os mapeamentos na configuração do aplicativo. Eu vi este post link e movi minhas entradas de mapeamento para o nível do site e eles são herdados pelo aplicativo embaixo e eu só habilitei IISClientCertificateAuthentication no nível do aplicativo (desativado no nível do site) e ele começou a funcionar.

Tente mover os mapeamentos para a configuração do nível do site e ative a autenticação do cliente no nível do aplicativo. Boa sorte e feliz ano novo!

    
por 05.01.2011 / 14:22
0

O erro indica que as credenciais que você está usando para acessar este site não receberam permissões para acessar o site.

Mais informações são necessárias, como o objetivo deste site e quais credenciais seus usuários farão login. No momento, não há autenticação permitida, mesmo que a autenticação de formulários seja observada. Como na resposta anterior acima, mova a lista de acesso / negação de autenticação para o nível do servidor.

    
por 17.12.2012 / 17:59