Condividi tramite


Elemento <alwaysFlowImpersonationPolicy>

Specifica che il flusso dell'identità Windows passa sempre attraverso punti asincroni, indipendentemente dal modo in cui è stata ottenuta la rappresentazione.

<alwaysFlowImpersonationPolicy  
  enabled="true|false"/>

Attributi ed elementi

Nelle sezioni seguenti vengono illustrati attributi, elementi figlio e padre.

Attributi

Attribute

Oggetto di descrizione

enabled

Attributo obbligatorio.

Indica se il flusso dell'identità Windows passa attraverso punti asincroni.

Attributo enabled

Value

Oggetto di descrizione

false

Il flusso dell'identità Windows non passa attraverso punti asincroni, a meno che la rappresentazione non sia stata ottenuta tramite metodi gestiti quali Impersonate. Questa è l'impostazione predefinita.

true

Il flusso dell'identità Windows passa sempre attraverso punti asincroni, indipendentemente dal modo in cui è stata ottenuta la rappresentazione.

Elementi figlio

Nessuno.

Elementi padre

Elemento

Oggetto di descrizione

configuration

Elemento radice in ciascun file di configurazione utilizzato in Common Language Runtime e nelle applicazioni .NET Framework.

runtime

Contiene le informazioni sull'associazione degli assembly e la Garbage Collection.

Note

In .NET Framework versione 1.0 e 1.1 il flusso dell'identità Windows non passa attraverso punti asincroni. In .NET Framework versione 2.0 è disponibile un oggetto ExecutionContext contenente informazioni sul thread attualmente in esecuzione e che consente il passaggio del flusso attraverso punti asincroni all'interno di un dominio applicazione. L'oggetto WindowsIdentity viene incluso anche nel flusso delle informazioni passate attraverso i punti asincroni, purché per la rappresentazione siano stati utilizzati metodi gestiti quali Impersonate e non, ad esempio, platform invoke a metodi nativi. Questo elemento viene utilizzato per specificare che il flusso dell'identità Windows non passa attraverso punti asincroni, indipendentemente dal modo in cui è stata ottenuta la rappresentazione.

È possibile modificare questo comportamento predefinito in due diversi modi:

  1. Nel codice gestito in base ai singoli thread.

    Per sopprimere il flusso in base al singolo thread, modificare le impostazioni ExecutionContext e SecurityContext utilizzando il metodo ExecutionContext.SuppressFlow, SecurityContext.SuppressFlowWindowsIdentity o SecurityContext.SuppressFlow.

  2. Nella chiamata all'interfaccia di hosting non gestita per il caricamento di CLR (Common Language Runtime).

    Se per il caricamento di CLR viene utilizzata un'interfaccia di hosting non gestita, anziché un semplice eseguibile gestito, è possibile specificare uno speciale flag nella chiamata alla funzione CorBindToRuntimeEx Function. Per attivare la modalità di compatibilità per l'intero processo, impostare su STARTUP_ALWAYSFLOW_IMPERSONATION il parametro flags per CorBindToRuntimeEx Function.

File di configurazione

L'elemento può essere utilizzato esclusivamente nel file di configurazione dell'applicazione.

Esempio

Nell'esempio riportato di seguito viene illustrato come specificare che il flusso dell'identità Windows passi attraverso punti asincroni anche quando la rappresentazione non viene ottenuta tramite metodi gestiti.

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

Vedere anche

Riferimenti

Schema delle impostazioni dell'ambiente di esecuzione

Elemento <legacyImpersonationPolicy>

Altre risorse

Schema dei file di configurazione per .NET Framework