<alwaysFlowImpersonationPolicy Element (Elemento alwaysFlowImpersonationPolicy> )
Especifica que a identidade do Windows flui sempre em pontos assíncronos, independentemente da forma como a representação foi executada.
<configuração>
<runtime>
<alwaysFlowImpersonationPolicy>
Syntax
<alwaysFlowImpersonationPolicy
enabled="true|false"/>
Atributos e Elementos
As secções seguintes descrevem atributos, elementos subordinados e elementos principais.
Atributos
Atributo | Descrição |
---|---|
enabled |
Atributo obrigatório. Indica se a identidade do Windows flui através de pontos assíncronos. |
Atributo ativado
Valor | Descrição |
---|---|
false |
A identidade do Windows não flui através de pontos assíncronos, a menos que a representação seja efetuada através de métodos geridos, como Impersonate. Esta é a predefinição. |
true |
A identidade do Windows flui sempre em pontos assíncronos, independentemente da forma como a representação foi executada. |
Elementos Subordinados
Nenhum.
Elementos Principais
Elemento | Descrição |
---|---|
configuration |
O elemento raiz em todos os ficheiros de configuração utilizados pelo runtime de idioma comum e .NET Framework aplicações. |
runtime |
Contém informações sobre o enlace de montagem e a recolha de lixo. |
Observações
No .NET Framework versões 1.0 e 1.1, a identidade do Windows não flui através de pontos assíncronos. No .NET Framework versão 2.0, existe um ExecutionContext objeto que contém informações sobre o thread atualmente em execução e o flui através de pontos assíncronos dentro de um domínio de aplicação. O WindowsIdentity também flui como parte das informações que fluem através dos pontos assíncronos, desde que a representação tenha sido obtida através de métodos geridos, como Impersonate e não através de outros meios, como a invocação da plataforma para métodos nativos. Este elemento é utilizado para especificar que a identidade do Windows flui através de pontos assíncronos, independentemente da forma como a representação foi alcançada.
Pode alterar este comportamento predefinido de duas outras formas:
No código gerido por thread.
Pode suprimir o fluxo por thread ao modificar as ExecutionContext definições e SecurityContext com o ExecutionContext.SuppressFlowmétodo , SecurityContext.SuppressFlowWindowsIdentityou SecurityContext.SuppressFlow .
Na chamada para a interface de alojamento não gerida para carregar o runtime de idioma comum (CLR).
Se for utilizada uma interface de alojamento não gerida (em vez de um executável gerido simples) para carregar o CLR, pode especificar um sinalizador especial na chamada para a função CorBindToRuntimeEx Function . Para ativar o modo de compatibilidade para todo o processo, defina o
flags
parâmetro para a Função CorBindToRuntimeEx comoSTARTUP_ALWAYSFLOW_IMPERSONATION
.
Ficheiro de Configuração
Numa aplicação .NET Framework, este elemento só pode ser utilizado no ficheiro de configuração da aplicação.
Para uma aplicação ASP.NET, o fluxo de representação pode ser configurado no ficheiro aspnet.config encontrado no diretório Pastas> do <Windows\Microsoft.NET\Framework\vx.x.xxxx.
ASP.NET, por predefinição, desativa o fluxo de representação no ficheiro de aspnet.config com as seguintes definições de configuração:
<configuration>
<runtime>
<legacyImpersonationPolicy enabled="true"/>
<alwaysFlowImpersonationPolicy enabled="false"/>
</runtime>
</configuration>
Em ASP.NET, se quiser permitir o fluxo de representação, tem de utilizar explicitamente as seguintes definições de configuração:
<configuration>
<runtime>
<legacyImpersonationPolicy enabled="false"/>
<alwaysFlowImpersonationPolicy enabled="true"/>
</runtime>
</configuration>
Exemplo
O exemplo seguinte mostra como especificar que a identidade do Windows flui através de pontos assíncronos, mesmo quando a representação é obtida através de meios diferentes dos métodos geridos.
<configuration>
<runtime>
<alwaysFlowImpersonationPolicy enabled="true"/>
</runtime>
</configuration>