Site do Windows Server 2008 R2: problema com representação

3

Eu tenho um site, que usa a representação. Quando meu usuário anônimo está definido como IUSR e a identidade do pool de aplicativos está definida como NetworkService, algumas páginas não são exibidas. Eu recebo uma página em branco, sem mensagem de erro.

Se eu colocar o usuário anônimo como ApplicationPoolIdentity e eu colocar a identidade do pool no localSystem, ele está funcionando bem.

Se eu colocar o usuário anônimo em um usuário administrador, ele está funcionando bem.

Eu sei que tenho um problema de segurança, mas não sei qual é a pasta que preciso para definir a política de segurança para tudo funcionando bem.

Eu coloco acesso de leitura / gravação na pasta do site para IUSR, IIS_IUSRS, serviço de rede e o grupo do meu usuário personificado.

Algum corpo teve uma ideia do que wong com a minha permissão?

Também encontrei este artigo, mas sem sucesso. link

    
por Cédric Boivin 03.02.2010 / 16:34

2 respostas

0

Eu encontrei o problema.

link

Existe o problema

A Microsoft confirmou que este é um bug no .Net Framework 2.0, 3.0 e 3.5. Abaixo está uma citação do e-mail que recebi deles:

"

A questão que estamos vendo é de fato um erro, e seguir é a explicação para o mesmo.

Resumo "O objeto Params é uma coleção do objeto QueryString, Form, Cookies e ServerVariables. Quando o objeto params é criado pela primeira vez, ele adiciona cada um desses objetos à sua coleção no método FillInParamsCollection. O primeiro objeto a ser armazenado é o QueryString. Se este objeto ainda não foi criado, o que no nosso caso não é, o construtor para este objeto tenta preencher o objeto QueryString.Este processo recebe a codificação chamando um método em HttpRequest chamado GetEncodingFromHeaders (). O método procura especificamente por um User-Agent que inicie com "UP". Nesse caso, ele tenta recuperar o cabeçalho "x-up-devcap-post-charset" da coleção Headers. Entretanto, como a coleção Headers ainda não está inicializada, também passa por sua rotina de inicialização.Uma das coisas que sua rotina de inicialização faz é definir a coleção Params como NULL.Isso é o que causa o AV, quando o método FillInParamsCollection tenta inicializar O próximo objeto após o objeto QueryString. "

Solução alternativa Pré-inicialize o objeto QueryString para evitar o problema. Simplesmente acesse Request.QueryString (). Não precisamos fazer nada com isso, apenas acessá-lo.

amostra:

           Object o = context.Request.QueryString;
           NameValueCollection parameters = context.Request.Params; 

"

A solução era usar diretamente no código Request["Value"] e não Request.Params["Value"]

    
por 03.02.2010 / 20:41
0

Por favor, consulte o artigo Criando Aplicativos ASP.NET Seguros: Autenticação, Autorização e Comunicação Segura .

Isso lhe dará um melhor entendimento sobre a identidade usada pelo seu aplicativo ASP.NET durante a representação. Dê a permissão necessária e você é bom.

HTH

    
por 03.02.2010 / 19:41