INTRODUÇÃO
Esta correcção fornece as seguintes funcionalidades para WCF Windows Communication Foundation () no Microsoft .NET Framework 3.5 Service Pack 1 (SP1) num computador que esteja a executar o Windows 7 ou Windows Server 2008 R2. Esta correcção também é um pré-requisito para o Microsoft Office SharePoint Server 2010.
Função 1
A correcção adiciona a propriedade AllowInsecureTransport na classe SecurityBindingElement para o .NET Framework 3.5 Service Pack 1. O valor predefinido desta propriedade é definido como False. Quando a propriedade está definida como True, a mensagem protegida de modo misto pode ser enviada através de um transporte não segura, por exemplo, HTTP nos serviços do Windows Communication Foundation (WCF). A propriedade deverá ser definida como verdadeiro apenas quando o cliente e o serviço estiverem num ambiente fidedigno.
Funcionalidade 2
Serviços WCF no .NET Framework 3.5 Service Pack 1 utilizam apenas um único thread para receber mensagens seguras, mesmo que o SharePoint tem múltiplos serviços Web em simultâneo receber pedidos de clientes de serviço diferente.
Esta correcção adiciona funcionalidades de ponto final de DispatcherSynchronization para melhorar o desempenho dos serviços SharePoint que utilizem o WCF. Esta funcionalidade de ponto final permite-lhe utilizar múltiplos threads numa instância do serviço em simultâneo receber mensagens seguras.
Funcionalidade 3
Esta correcção fornece acesso à propriedade OutgoingSupportingTokens na classe SecurityMessageProperty . Os clientes de serviço Web do SharePoint podem utilizar esta nova propriedade para reduzir a latência média de pedidos do lado do cliente, reutilizar tokens que são necessárias. Anteriormente, os tokens foram regenerados para cada pedido.
Mais informações
Informações sobre correção
Agora tem uma correcção suportada disponível na Microsoft. Contudo, destina-se apenas a corrigir o problema descrito neste artigo. Aplique-a apenas em sistemas que tenham este problema específico.
Para resolver este problema, contacte o suporte técnico da Microsoft para obter a correcção. Para obter uma lista completa dos números de telefone do suporte técnico da Microsoft e informações sobre os custos de suporte, visite o seguinte Web site da Microsoft:
http://support.microsoft.com/contactus/?ws=supportNota Em casos especiais, os custos normalmente inerentes às chamadas de suporte poderão ser anulados se um técnico de suporte da Microsoft determinar que uma actualização específica resolverá o problema. Os custos de normais do suporte serão aplicados a questões de suporte adicionais e problemas que não se enquadrem na atualização específica em questão.
Para transferir esta correcção a partir da Galeria de código de Microsoft Developer Network (MSDN), visite o seguinte Web site da Microsoft:
http://code.msdn.microsoft.com/KB976462Nota Galeria de códigos MSDN apresenta os idiomas nos quais a correcção está disponível. Se não vir o idioma listado, é porque a página de recursos da Galeria de códigos não está disponível para esse idioma.
Em alternativa, pode transferir este conjunto de correcções a partir do seguinte Web site Microsoft Connect:
https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=23806A versão inglesa desta correcção tem os atributos de ficheiro (ou atributos de ficheiro posteriores) listados na seguinte tabela. As datas e horas destes ficheiros são listadas na hora Universal Coordenada (UTC). Quando visualiza as informações do ficheiro, é convertido para a hora local. Para determinar a diferença entre a UTC e a hora local, utilize o separador Fuso horário no item data e hora no painel de controlo.
Informações de ficheiro
Para todas as versões baseadas em x86 suportadas do Windows 7
Nome do ficheiro |
Versão do ficheiro |
Tamanho do ficheiro |
Data |
Hora |
Plataforma |
---|---|---|---|---|---|
Smdiagnostics.dll |
3.0.4506.5000 |
110,592 |
23-Nov-2009 |
23:22 |
x86 |
System.identitymodel.dll |
3.0.4506.5000 |
438,272 |
23-Nov-2009 |
23:22 |
x86 |
System.runtime.serialization.dll |
3.0.4506.5000 |
970,752 |
23-Nov-2009 |
23:22 |
x86 |
System.servicemodel.dll |
3.0.4506.5000 |
5,967,872 |
23-Nov-2009 |
23:22 |
x86 |
Servicemonikersupport.dll |
3.0.4506.5000 |
17,256 |
23-Nov-2009 |
23:22 |
x86 |
Para todas as versões suportadas baseadas em x64 do Windows 7 e do Windows Server 2008 R2
Nome do ficheiro |
Versão do ficheiro |
Tamanho do ficheiro |
Data |
Hora |
Plataforma |
---|---|---|---|---|---|
Servicemonikersupport.dll |
3.0.4506.5000 |
19,304 |
23-Nov-2009 |
23:23 |
x64 |
Smdiagnostics.dll |
3.0.4506.5000 |
94,208 |
23-Nov-2009 |
23:23 |
x64 |
System.identitymodel.dll |
3.0.4506.5000 |
397,312 |
23-Nov-2009 |
23:23 |
x64 |
System.runtime.serialization.dll |
3.0.4506.5000 |
847,872 |
23-Nov-2009 |
23:23 |
x64 |
System.servicemodel.dll |
3.0.4506.5000 |
5,304,320 |
23-Nov-2009 |
23:23 |
x64 |
Para todas as edições suportadas baseadas em Itanium do Windows Server 2008 R2
Nome do ficheiro |
Versão do ficheiro |
Tamanho do ficheiro |
Data |
Hora |
Plataforma |
---|---|---|---|---|---|
Servicemonikersupport.dll |
3.0.4506.5000 |
33,640 |
23-Nov-2009 |
23:21 |
IA-64 |
Smdiagnostics.dll |
3.0.4506.5000 |
94,208 |
23-Nov-2009 |
23:21 |
IA-64 |
System.identitymodel.dll |
3.0.4506.5000 |
397,312 |
23-Nov-2009 |
23:21 |
IA-64 |
System.runtime.serialization.dll |
3.0.4506.5000 |
847,872 |
23-Nov-2009 |
23:21 |
IA-64 |
System.servicemodel.dll |
3.0.4506.5000 |
5,304,320 |
23-Nov-2009 |
23:21 |
IA-64 |
Pré-requisitos
Tem de ter o .NET Framework 3.5 SP1 instalado para aplicar esta correcção.
Necessidade de reinício
Não é necessário reiniciar o computador depois de instalar esta correcção se existe nenhuma instância de .NET Framework está a ser utilizada actualmente.
Exemplos das novas funcionalidades
O exemplo de código seguinte mostra como utilizar a propriedade AllowInsecureTransport na configuração de segurança de uma ligação personalizada.
<customBinding>
<binding name="SampleHttpBinding">
<security
authenticationMode="IssuedTokenOverTransport"
allowInsecureTransport="true"/>
<binaryMessageEncoding/>
<httpTransport/>
</binding>
</customBinding>
Exemplo de código seguinte mostra como utilizar o comportamento de ponto final de DispatcherSynchronization para especificar o número máximo de threads para receber mensagens.
<services>
<service name="MicrosoftMyTestService">
<endpoint address="http://loocalhost/IService" binding="customBinding"
contract="IService"
behaviorConfiguration="ServiceEPBehavior" bindingConfiguration="MyCustomBinding">
</endpoint>
</service>
</services>
<behaviors>
<endpointBehaviors>
<behavior name="ServiceEPBehavior">
<dispatcherSynchronization maxPendingReceives="10"/>
</behavior>
</endpointBehaviors>
</behaviors>
Estado
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a".
Referências
Para mais informações sobre a funcionalidade descrita na secção 'Função 1', clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
CORRIGIR 971831 : está disponível uma correcção que adiciona uma propriedade de SecurityBindingElement.AllowInsecureTransport que permite que a mensagem protegida de modo misto seja enviado através de um transporte não segura no WCF para o .NET Framework 3.5 Service Pack 1
Para mais informações sobre a funcionalidade descrita na secção "Funcionalidade 2", clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
975955 está disponível uma correcção que adiciona um comportamento de ponto final que permite aos serviços a utilizar múltiplos threads para receber mensagens seguras no .NET Framework 3.5 Service Pack 1
Para mais informações sobre a funcionalidade descrita na secção "Funcionalidade 3", clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
CORRIGIR 976394 : está disponível uma correcção que faz com que a propriedade de SecurityMessageProperty.OutgoingSupportingToken pública no Microsoft .NET 3.5 Service Pack 1
Para mais informações sobre a propriedade SecurityMessageProperty.OutgoingSupportingTokens no .NET Framework 4.0, visite o seguinte Web site da Microsoft:
http://msdn.microsoft.com/en-us/library/system.servicemodel.security.securitymessageproperty.outgoingsupportingtokens(VS.100).aspxPara mais informações sobre a propriedade SecurityBindingElement.AllowInsecureTransport no .NET Framework 4.0, visite o seguinte Web site da Microsoft:
http://msdn.microsoft.com/en-us/library/system.servicemodel.channels.securitybindingelement.allowinsecuretransport(VS.100).aspxPara mais informações sobre a classe de DispatcherSynchronizationBehaviorno .NET Framework 4.0, visite o seguinte Web site da Microsoft: