Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Specifica che l'identità di Windows scorre sempre tra punti asincroni, indipendentemente dalla modalità di rappresentazione eseguita.
<
>
di configurazione
>
runtime di<
<alwaysFlowImpersonationPolicy>
Sintassi
<alwaysFlowImpersonationPolicy
enabled="true|false"/>
Attributi ed elementi
Le sezioni seguenti descrivono attributi, elementi figlio ed elementi padre.
Attributi
Attributo | Descrizione |
---|---|
enabled |
Attributo obbligatorio. Indica se l'identità di Windows passa attraverso punti asincroni. |
Attributo abilitato
Valore | Descrizione |
---|---|
false |
L'identità di Windows non passa attraverso punti asincroni, a meno che la rappresentazione non venga eseguita tramite metodi gestiti, ad esempio Impersonate. Si tratta dell'impostazione predefinita. |
true |
L'identità di Windows scorre sempre tra punti asincroni, indipendentemente dal modo in cui è stata eseguita la rappresentazione. |
Elementi figlio
Nessuno.
Elementi padre
Elemento | Descrizione |
---|---|
configuration |
Elemento radice in ogni file di configurazione usato dalle applicazioni Common Language Runtime e .NET Framework. |
runtime |
Contiene informazioni sull'associazione di assembly e la Garbage Collection. |
Osservazioni
In .NET Framework versioni 1.0 e 1.1, l'identità di Windows non viene propagata tra punti asincroni. In .NET Framework versione 2.0 è presente un oggetto ExecutionContext che contiene informazioni sul thread attualmente in esecuzione e lo scorre tra punti asincroni all'interno di un dominio applicazione. Il WindowsIdentity scorre anche come parte delle informazioni che passano attraverso i punti asincroni, a condizione che la rappresentazione sia stata ottenuta usando metodi gestiti come Impersonate e non attraverso altri mezzi, ad esempio platform invoke ai metodi nativi. Questo elemento viene usato per specificare che l'identità di Windows passa attraverso punti asincroni, indipendentemente dal modo in cui è stata ottenuta la rappresentazione.
È possibile modificare questo comportamento predefinito in altri due modi:
Nel codice gestito per thread.
È possibile eliminare il flusso in base al thread modificando le impostazioni di ExecutionContext e SecurityContext usando il metodo ExecutionContext.SuppressFlow, SecurityContext.SuppressFlowWindowsIdentityo SecurityContext.SuppressFlow.
Nella chiamata all'interfaccia di hosting non gestita per caricare Common Language Runtime (CLR).
Se per caricare CLR viene usata un'interfaccia di hosting non gestita anziché un semplice eseguibile gestito, è possibile specificare un flag speciale nella chiamata alla funzione Funzione CorBindToRuntimeEx. Per abilitare la modalità di compatibilità per l'intero processo, impostare il parametro
flags
per Funzione CorBindToRuntimeEx suSTARTUP_ALWAYSFLOW_IMPERSONATION
.
File di configurazione
In un'applicazione .NET Framework questo elemento può essere usato solo nel file di configurazione dell'applicazione.
Per un'applicazione ASP.NET, il flusso di rappresentazione può essere configurato nel file aspnet.config disponibile nella directory <cartella di Windows>\Microsoft.NET\Framework\vx.x.xxxx.
ASP.NET per impostazione predefinita disabilita il flusso di rappresentazione nel file aspnet.config usando le impostazioni di configurazione seguenti:
<configuration>
<runtime>
<legacyImpersonationPolicy enabled="true"/>
<alwaysFlowImpersonationPolicy enabled="false"/>
</runtime>
</configuration>
In ASP.NET, se si vuole consentire il flusso di rappresentazione, è necessario usare in modo esplicito le impostazioni di configurazione seguenti:
<configuration>
<runtime>
<legacyImpersonationPolicy enabled="false"/>
<alwaysFlowImpersonationPolicy enabled="true"/>
</runtime>
</configuration>
Esempio
Nell'esempio seguente viene illustrato come specificare che l'identità di Windows passa attraverso punti asincroni, anche quando la rappresentazione viene ottenuta tramite metodi diversi da quelli gestiti.
<configuration>
<runtime>
<alwaysFlowImpersonationPolicy enabled="true"/>
</runtime>
</configuration>
Vedere anche
- Configurare le app usando i file di configurazione
- schema delle impostazioni di runtime
- schema del file di configurazione
- <elemento legacyImpersonationPolicy>