ID do artigo: 959546 - Última revisão: quarta-feira, 1 de abril de 2009 - Revisão: 1.2

CORRECÇÃO: Um aplicativo de navegador XAML retorna um erro de exceção de segurança quando você usar o aplicativo para conectar-se o serviço do WCF em confiança parcial

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Expandir tudo | Recolher tudo

Sintomas

Um serviço Windows Communication Foundation (WCF) que é hospedado no Internet Information Services (IIS) está configurado para usar a autenticação WindowsAuthentication e vinculação a BasicHttpBinding. Quando você usa um aplicativo de navegador XAML (XBAP) para conectar-se o serviço do WCF em confiança parcial, o aplicativo de navegador XAML retornará um erro de exceção de segurança. Além disso, você receber uma mensagem de erro semelhante à seguinte:
System.Security.SecurityException: Solicitação de permissão do tipo ' System.NET.WebPermission, System, Version = x, Culture = neutral, PublicKeyToken = y falha.
anotações
  • X representa o número de versão.
  • Y representa a identificação de token.
  • Esse problema não ocorre em confiança total.

Causa

Esse problema ocorre porque a propriedade HttpWebRequest.UnsafeAuthenticatedConnectionSharing é definida como True para ativar o compartilhamento de conexão autenticado NTLM. Essa propriedade é definida como True para otimizar o desempenho. No entanto, o comportamento de setter exige uma permissão da Web irrestrito. A relação de confiança parcial não fornece essa permissão. Portanto, o aplicativo retornará um erro de exceção de segurança.

Resolução

Um hotfix com suporte foi disponibilizada pela Microsoft. No entanto, destina-se a corrigir o problema descrito neste artigo. Aplique-o somente aos sistemas que apresentarem esse problema específico. Esta correcção poderá submetida a testes adicionais. Portanto, se você não tiver sido gravemente afetado por esse problema, recomendamos que você aguarde o próximo service pack que contém esse hotfix.

Para resolver esse problema imediatamente, contate o Microsoft Customer Atendimento para obter o hotfix. Para obter uma lista completa de telefones do serviço de suporte a clientes da Microsoft e informações sobre os custos de suporte, visite o seguinte site:
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
Observação Em alguns casos, as taxas cobradas pelas ligações para chamadas de suporte podem ser canceladas se um profissional de suporte da Microsoft determinar que uma atualização específica resolverá o problema. Os custos normais de suporte serão aplicados a questões e problemas que não se qualificam à atualização específica em questão de suporte adicionais.

Pré-requisitos

Você deve ter o .NET Framework 3.5 1 instalado para aplicar esse hotfix.

Requisitos de reinicialização

Não é necessário reiniciar o computador após aplicar esse hotfix se nenhuma instância do .NET Framework estiver em uso.

Informações sobre a substituição do hotfix

Esse hotfix não substitui outros hotfixes.

Informações sobre o arquivo

A versão em inglês deste hotfix tem atributos de arquivo (ou atributos de arquivo posteriores) listados na tabela a seguir. As datas e horas desses arquivos estão listadas no horário de universal coordenado (UTC). Quando você exibe as informações do arquivo, ele é convertido para a hora local. Para encontrar a diferença entre o UTC e o horário local, uso o fuso horário guia na Data e hora no painel de controle.
x 86 versão no Windows Server 2000, Windows Server 2003 e no Windows XP
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
System.Runtime.Serialization.dll3.0.4506.4019970,75229-Janeiro de 200900: 21x 86
System.ServiceModel.dll3.0.4506.40195,931,00829-Janeiro de 200900: 21x 86
x 64 versão no Windows Server 2000, Windows Server 2003 e no Windows XP
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
System.Runtime.Serialization.dll3.0.4506.4019847,87228-Jan-200921: 46x 64
System.Runtime.Serialization.dll3.0.4506.4019970,75229-Janeiro de 200900: 21x 86
System.ServiceModel.dll3.0.4506.40195,267,45628-Jan-200921: 46x 64
System.ServiceModel.dll3.0.4506.40195,931,00829-Janeiro de 200900: 21x 86
x 86 versão para Windows Vista SP1, Windows Server Core e Windows Server 2008
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
System.ServiceModel.dll3.0.4506.40375,931,00812-Fevereiro de 200900: 28x 86
x 64 versão para Windows Vista SP1, Windows Server Core e Windows Server 2008
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
System.ServiceModel.dll3.0.4506.40375,267,45612-Fevereiro de 200900: 34x 64
System.ServiceModel.dll3.0.4506.40375,931,00812-Fevereiro de 200900: 28x 86
Com base em Itanium versão para Windows Server Core e Windows Server 2008
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
System.ServiceModel.dll3.0.4506.40375,267,45611-Fevereiro de 200923: 28IA-64
System.ServiceModel.dll3.0.4506.40375,931,00812-Fevereiro de 200900: 28x 86

Como Contornar

Para contornar esse problema, defina a propriedade HttpWebRequest.UnsafeAuthenticatedConnectionSharing como false quando você estiver usando confiança parcial.

Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Referências

Para obter mais informações sobre o recurso de confiança parcial, visite o seguinte site da Web Microsoft Developer Network (MSDN):
http://msdn.microsoft.com/en-us/library/bb412186.aspx (http://msdn.microsoft.com/en-us/library/bb412186.aspx)
Para obter mais informações sobre a propriedade HttpWebRequest.UnsafeAuthenticatedConnectionSharing , visite o seguinte site da MSDN:
http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.unsafeauthenticatedconnectionsharing(VS.71).aspx (http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.unsafeauthenticatedconnectionsharing(VS.71).aspx)

A informação contida neste artigo aplica-se a:
  • Windows Communication Foundation
Palavras-chave: 
kbmt kbhotfixserver kbexpertiseadvanced kbqfe kbsurveynew KB959546 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 959546  (http://support.microsoft.com/kb/959546/en-us/ )