Sim, você criaria um pool de aplicativos para cada site (e é provável que o IIS já tenha feito isso para você) e, em seguida, configure a identidade de cada um desses pools da maneira que desejar.
Estou executando um servidor com mais de 60 sites. Agora todos esses sites estão sendo executados na conta IUSR. Observando a segurança da pasta, o grupo IIS_IUSRS tem acesso a todas as pastas do site. Isso apresenta um problema em que, se um site for comprometido, todos os sites serão comprometidos, pois um usuário poderá acessar todos os arquivos.
É possível configurar cada site para ser executado sob o seu próprio usuário e, em caso afirmativo, como faço para configurar os sites de tal forma?
Estou executando o Windows Server 2008 R2 Service Pack 1 (compilação 7601) com o IIS versão 7.5.
Sim, você criaria um pool de aplicativos para cada site (e é provável que o IIS já tenha feito isso para você) e, em seguida, configure a identidade de cada um desses pools da maneira que desejar.
Sim. O padrão para o Windows 2008 R2 - e um recurso disponível no 2008 SP2 - é executar cada site usando o ApplicationPoolIdentity (uma conta gerada automaticamente com baixo privilégio). Você também pode especificar essa identidade como a conta de usuário Anônimo.
Cada site criado pela GUI obtém um pool de aplicativos associado a ele, e uma conta de usuário com poucos privilégios (uma Identidade do Pool de Aplicativos) é sorta inferida sorta gerada (a conta realmente não existe, mas um SID computável ) para esse pool de aplicativos quando executado com essa identidade.
Para isolar melhor seus aplicativos:
proteja o conteúdo de cada site para que a IUSR não tenha lido, apenas a identidade (IIS AppPool \ AppPoolName) (+ sistema + administradores + qualquer usuário autenticado) faz
edite as configurações de autenticação anônima para cada site e defina o usuário anônimo como Identidade do pool de aplicativos
Você precisará fazer tudo isso de uma vez, então, no futuro, é mais fácil provisioná-los dessa maneira. :)