<legacyImpersonationPolicy> (Elemento)

Actualización: noviembre 2007

Especifica que la identidad de Windows no pasa por puntos asincrónicos, sin tener en cuenta la configuración de flujo para el contexto de ejecución del subproceso actual.

<configuration> (Elemento)
  Elemento <runtime>
    <legacyImpersonationPolicy> (Elemento)

<legacyImpersonationPolicy  
   enabled="true|false"/>

Atributos y elementos

En las siguientes secciones se describen los atributos, elementos secundarios y elementos primarios.

Atributos

Atributo

Descripción

enabled

Atributo necesario.

Especifica que WindowsIdentity no fluye por los puntos asincrónicos, sin tener en cuenta la configuración de flujo del ExecutionContext del subproceso actual.

Atributo Enabled

Valor

Descripción

false

WindowsIdentity fluye por puntos asincrónicos que dependen de la configuración de flujo de ExecutionContext para el subproceso actual. Éste es el valor predeterminado.

true

WindowsIdentity no fluye por los puntos asincrónicos, sin tener en cuenta la configuración de flujo de ExecutionContext en el subproceso actual.

Elementos secundarios

Ninguno.

Elementos primarios

Elemento

Descripción

configuration

Es el elemento raíz de cada archivo de configuración que utilizan las aplicaciones Common Language Runtime y .NET Framework.

runtime

Contiene información del enlace del ensamblado y del recolector de elementos no utilizados.

Comentarios

En las versiones 1.0 y 1.1 de .NET Framework, WindowsIdentity no fluye por ningún punto asincrónico definido por el usuario. En la versión 2.0 de .NET Framework, hay un objeto ExecutionContext que contiene información sobre el subproceso que se está ejecutando y lo hace fluir por los puntos asincrónicos de un dominio de aplicación. WindowsIdentity también fluye como parte de la información que pasa por los puntos asincrónicos, lo que significa que si existe un contexto de suplantación, también fluirá. Este elemento se utiliza para especificar que WindowsIdentity no fluye por los puntos asincrónicos.

Nota

Common Language Runtime (CLR) tiene en cuenta las operaciones de suplantación realizadas sólo con código administrado, no de suplantación realizada fuera del código administrado, como por ejemplo mediante la invocación de plataforma a código no administrado o mediante llamadas directas a funciones de Win32. Sólo los objetos WindowsIdentity administrados pueden fluir por los puntos asincrónicos, a menos que el elemento alwaysFlowImpersonationPolicy se haya establecido en verdadero (<alwaysFlowImpersonationPolicy enabled="true"/>). Establecer el elemento alwaysFlowImpersonationPolicy en verdadero especifica que la identidad de Windows siempre fluye por los puntos asincrónicos, sin tener en cuenta cómo se realizó la suplantación. Para obtener más información sobre suplantación no administrada que fluye por puntos asincrónicos, vea <alwaysFlowImpersonationPolicy> (Elemento).

Este elemento sólo puede utilizarse en el archivo de configuración de la aplicación.

Puede modificar este comportamiento predeterminado de otras dos maneras:

  1. En código administrado, subproceso a subproceso.

    Puede suprimir el flujo subproceso a subproceso modificando la configuración de ExecutionContext y SecurityContext utilizando el método ExecutionContext.SuppressFlow, SecurityContext.SuppressFlowWindowsIdentity o SecurityContext.SuppressFlow.

  2. En la llamada a la interfaz de alojamiento no administrada para cargar Common Language Runtime (CLR).

    Si se utiliza una interfaz de alojamiento no administrada (en lugar de un ejecutable simple administrado) para cargar el CLR, puede especificar un identificador especial en la llamada a la función CorBindToRuntimeEx (Función). Para habilitar el modo de compatibilidad para todo proceso, establezca el parámetro flags de CorBindToRuntimeEx (Función) en STARTUP_LEGACY_IMPERSONATION.

Ejemplo

El ejemplo siguiente muestra cómo especificar el comportamiento heredado que no hace fluir la identidad de Windows por los puntos asincrónicos.

<configuration>
   <runtime>
      <legacyImpersonationPolicy enabled="true"/>
   </runtime>
</configuration>

Vea también

Referencia

Esquema de la configuración de Common Language Runtime

Otros recursos

Esquema de los archivos de configuración de .NET Framework