Estou tentando testar meu site ASP.Net no localhost e estou recebendo este erro:
HTTP Error 401.3 - Unauthorized
You do not have permission to view this directory or page because of
the access control list (ACL) configuration or encryption settings for
this resource on the Web server.
Eu tenho os seguintes usuários na pasta do aplicativo do site, com permissões totais de leitura/gravação:
- SERVIÇO DE REDE
- IIS_IUSRS
- SISTEMA
- Administradores
- Natan (eu)
O que posso tentar consertar isso?
O IIS 7 também cria "IUSR" como usuário padrão para acessar arquivos via IIS. Portanto, faça com que o usuário IUSR tenha acesso de leitura a arquivos/pastas.
Como verificar se o IUSR leu o Access? Clique com o botão direito -> Pasta -> Propriedades -> Guia Segurança Veja se o IUSR está na lista de nomes de grupo ou usuário, se não.
Clique em Editar -> Adicionar -> Avançado -> Localizar agora -> Selecione IUSR e clique em OK quatro vezes
Encontrei isso em outro fórum, então não posso levar crédito, mas fiz isso e funcionou para mim:
"Tente alterar a configuração de autenticação anônima no IIS7:
Clique em Autenticação e clique em editar depois de escolher Autenticação Anônima. Na janela de abertura, selecione a identidade do pool de aplicativos e clique em OK. "
Eu tive o mesmo problema no IIS 7.5 no Windows Server 2008. Para mim, as etapas a seguir funcionaram para corrigir o problema:
Depois que fiz essa alteração, meus erros 401.3 desapareceram.
Você está usando um mecanismo de login ou apenas uma autenticação anônima?
Se anônimo, acesse o gerenciador do IIS, no ícone Autenticação, escolha o nome de autenticação anônima e clique no botão Editar em Ações. Verifique qual usuário está especificado lá e certifique-se de que ele tenha permissões para os arquivos/pastas do site.
Se você tiver algum tipo de sistema de login, certifique-se de que o(s) usuário(s) com o qual você está fazendo login tenham permissões para os arquivos do site e certifique-se de que o ID do pool de aplicativos sob o qual você está executando tenha pelo menos acesso de leitura aos arquivos.
Por padrão, com o IIS 7.5, cada pool de aplicativos é executado em sua própria "identidade virtual". A identidade do pool de aplicativos são as credenciais usadas para acessar o sistema de arquivos.
Não tenho certeza da mecânica disso, mas a Microsoft fez isso para aumentar a segurança da instalação padrão, aliviando a necessidade de criar contas de serviço em determinados cenários de instalação. Independentemente disso, o resultado é que você terá que identificar essa conta de "identidade virtual" e conceder acesso ao seu diretório ou alterar a conta de serviço do pool de aplicativos.
As identidades virtuais do pool de aplicativos são denominadas "IIS AppPool\", portanto, se você estiver usando o DefaultAppPool, sua identidade será "IIS AppPool\DefaultAppPool".
Consulte este artigo para obter detalhes mais completos.
Oi para mim no trabalho do IIS 8: 1) Vá no diretório virtual do IIS - 2) autenticação - 3) autenticação anônima - 4) defina a identidade do pool de aplicativos.
Como nenhuma das respostas acima me ajudou, pensei em compartilhar como resolvi esse problema quando me deparei com ele na minha máquina local executando o win7 e o IIS7.
Vá para IIS7 -> Pools de aplicativos
Encontre o pool de aplicativos do seu site (no meu caso DefaultAppPool), clique com o botão direito e escolha Opções avançadas.
Encontre o capítulo Modelo de Processo e altere o campo Identidade para um usuário que você sabe com certeza tem acesso aos arquivos na pasta do seu site (no meu caso o administrador local)
Respondendo para incluir informações dos comentários sobre a resposta aceita.
No IIS 7.5 no Windows Server 2008r2, o grupo IIS_IUSRS já está incluído, mas o grupo IUSR separado ainda deve ser adicionado às permissões para permitir o acesso/download de arquivos.
Para obter mais informações sobre as diferenças nas contas, consulte Noções básicas sobre contas internas de usuário e grupo no IIS.
Tente isto... Vá para Gerenciamento do Computador (clique com o botão direito no meu computador e selecione Gerenciar) --> Usuários e Grupos Locais --> Usuários --> Selecione IUSR_MACHINENAME --> Clique com o botão direito do mouse em Propriedades --> Certifique-se de que é um membro de IIS_WPG e usuários e não convidados.
Estou trabalhando com o Server 2008 R2 e a conta IUser não está disponível na lista.
Tente instalar o lado do cliente do IIS usando
aspnet_regiis -c
e redefina o IIS.