Permissões de pasta IIS7 para aplicativo da web

91

Estou usando a autenticação do Windows sem representação no site da intranet da minha empresa com IIS7.

No IIS7, qual conta é usada para acessar a pasta que contém meu aplicativo da web usando essas configurações?

Seria IIS_IUSRS? Ou SERVIÇO DE REDE? Ou outro que não conheço?

Andrew
fonte

Respostas:

127

No IIS 7 (não no IIS 7.5), os sites acessam arquivos e pastas com base na conta definida no pool de aplicativos do site. Por padrão, no IIS7, essa conta é NETWORK SERVICE.

Especifique uma identidade para um pool de aplicativos (IIS 7)

No IIS 7.5 (Windows 2008 R2 e Windows 7), os pools de aplicativos são executados no ApplicationPoolIdentity, que é criado quando o pool de aplicativos é iniciado. Se você deseja definir ACLS para esta conta, você precisa escolher em IIS AppPool\ApplicationPoolNamevez de NT Authority\Network Service.

Thomas
fonte
34
Observe que não é literalmente IIS AppPool\ApplicationPoolName, mas IIS AppPool\<yourpoolname>.
Jeff S
21
No IIS 7.5, a identidade padrão para um pool de aplicativos é ApplicationPoolIdentity. ApplicationPoolIdentity representa uma conta de usuário do Windows chamada "IIS APPPOOL \ AppPoolName", que é criada quando o pool de aplicativos é criado, onde AppPoolName é o nome do pool de aplicativos. O usuário "IIS APPPOOL \ [AppPoolName]" é, por padrão, um membro do grupo IIS_IUSRS. Portanto, você precisa conceder acesso de gravação ao grupo IIS_IUSRS
Be.St.
Pessoas com versões mais recentes do Windows podem achar este artigo útil para configurar a conta 'AppPool \ DefaultAppPool' se tiverem um problema semelhante: iis.net/learn/manage/configuring-security/… . Isso também ajuda a evitar o erro que recebi após a atualização do Windows 8 para 8.1, onde diz: "Ocorreu um erro ao carregar um arquivo de configuração: Falha ao iniciar o monitoramento das alterações em [caminho completo do arquivo] porque o acesso foi negado.".
Matty J
Dei permissão total ao pool de aplicativos ... mas ainda obtive o acesso negado.
Yousi,
26

http://forums.iis.net/t/1187650.aspx tem a resposta. Definir a autenticação iis para identidade do pool de aplicativos resolverá isso.

Na autenticação IIS, a autenticação anônima foi definida como "Usuário específico". Quando mudei para Pool de aplicativos, posso acessar o site.

Para configurar, clique em seu site no IIS e clique duas vezes em "Autenticação". Clique com o botão direito em "Autenticação Anônima" e clique na opção "Editar ...". Mude de "Usuário específico" para "Identidade do pool de aplicativos". Agora você deve ser capaz de definir as permissões de arquivo e pasta usando o IIS AppPool \ {Your App Pool Name}.

Nat
fonte
3
Isso ajudou tremendamente. Se você não alterar a Autenticação anônima de "Usuário específico" para "Identidade do pool de aplicativos", suas alterações de permissão não serão refletidas ao definir as permissões IIS AppPool \ {Your App Pool Name}.
David
OH MEU DEUS. Ninguém parece perceber isso. Isso só resolveu horas de escavação.
Joe Swindell
19

Executando o IIS 7.5, tive sorte ao adicionar permissões para o usuário do computador local IUSR . O usuário do pool de aplicativos não funcionou.

Kenny Evitt
fonte
16

Se for de alguma ajuda a alguém, dê permissão ao grupo "IIS_IUSRS".

Observe que se você não conseguir encontrar "IIS_IUSRS", tente acrescentá-lo ao nome do seu servidor, como "MySexyServer \ IIS_IUSRS".

JohnnyFun
fonte
Isso fez isso por mim. Eu estava faltando o nome do servidor e não tinha visto ninguém mencioná-lo ainda.
drichardson
Para isso, você sempre pode usar a notação local ". \ IIS_IUSRS"
Bernhard
3

Funcionou para mim em 30 segundos, curto e doce:

  1. No Gerenciador do IIS (execute inetmgr)
  2. Vá para ApplicationPool -> Configurações avançadas
  3. Defina ApplicationPoolIdentity como NetworkService
  4. Vá para o arquivo, clique com o botão direito nas propriedades, vá para segurança, clique em editar, clique em adicionar, entre no serviço de rede (com espaço e clique em 'verificar nomes') e forneça controle total (ou apenas as permissões de que você precisa)
Jason Hitchings
fonte
Isso foi o suficiente! Obrigado
Yazan Khalaileh
1
  1. Trabalhando no IIS 7.5 e no Windows 7, não consegui dar permissão APPPOOL / Mypool
  2. As permissões IUSR e IIS_IUSRS não funcionam para mim
  3. Eu tenho o problema desta forma:

    - Aplicativo de console criado com C #
    - Esta aplicação usando createeventsource como este

    if (! System.Diagnostics.EventLog.SourceExists (sourceName)) System.Diagnostics.EventLog.CreateEventSource (sourceName, logName);

    - Construir solução e obter o arquivo .exe

    -Execute exe como administrador.Este arquivo de log de criação.

NOTA: Não lembre que o visualizador de eventos deve ser atualizado para ver o log.

Espero que esta solução ajude alguém :)

Alper Tunga Arslan
fonte