Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Určuje, že identita Windows vždy prochází mezi asynchronními body bez ohledu na to, jak se zosobnění provedlo.
>
konfigurace<
>
modulu runtime<
<
>
alwaysFlowImpersonationPolicy
Syntax
<alwaysFlowImpersonationPolicy
enabled="true|false"/>
Atributy a prvky
Následující části popisují atributy, podřízené prvky a nadřazené prvky.
Atributy
Atribut | Popis |
---|---|
enabled |
Povinný atribut. Určuje, jestli identita Windows prochází mezi asynchronními body. |
enabled – atribut
Hodnota | Popis |
---|---|
false |
Identita Systému Windows neprochází mezi asynchronními body, pokud se zosobnění neprovádí prostřednictvím spravovaných metod, jako je Impersonate. Toto je výchozí hodnota. |
true |
Identita Windows vždy prochází mezi asynchronními body bez ohledu na to, jak byla zosobnění provedena. |
Podřízené elementy
Žádný.
Nadřazené elementy
Element | Popis |
---|---|
configuration |
Kořenový prvek v každém konfiguračním souboru používaném modulem CLR (Common Language Runtime) a aplikacemi rozhraní .NET Framework. |
runtime |
Obsahuje informace o vazbě sestavení a uvolňování paměti. |
Poznámky
V rozhraní .NET Framework verze 1.0 a 1.1 neprotéká identita Systému Windows mezi asynchronními body. V rozhraní .NET Framework verze 2.0 existuje objekt ExecutionContext, který obsahuje informace o aktuálně spuštěné vlákně, a tokuje ho mezi asynchronními body v rámci domény aplikace. WindowsIdentity také proudí jako součást informací, které proudí přes asynchronní body, za předpokladu, že zosobnění bylo dosaženo pomocí spravovaných metod, jako je Impersonate, a ne prostřednictvím jiných prostředků, jako je volání platformy na nativní metody. Tento prvek se používá k určení, že identita Systému Windows probíhá v asynchronních bodech bez ohledu na to, jak bylo dosaženo zosobnění.
Toto výchozí chování můžete změnit dvěma dalšími způsoby:
Ve spravovaném kódu na základě jednotlivých vláken.
Tok můžete potlačit na základě jednotlivých vláken úpravou nastavení ExecutionContext a SecurityContext pomocí metody ExecutionContext.SuppressFlow, SecurityContext.SuppressFlowWindowsIdentitynebo SecurityContext.SuppressFlow.
Při volání nespravovaného hostitelského rozhraní pro načtení modulu CLR (Common Language Runtime).
Pokud se k načtení modulu CLR používá nespravované hostitelské rozhraní (místo jednoduchého spravovaného spustitelného souboru), můžete ve volání CorBindToRuntimeEx funkce zadat speciální příznak. Chcete-li povolit režim kompatibility pro celý proces, nastavte parametr
flags
pro funkci CorBindToRuntimeEx naSTARTUP_ALWAYSFLOW_IMPERSONATION
.
Konfigurační soubor
V aplikaci .NET Framework lze tento prvek použít pouze v konfiguračním souboru aplikace.
U ASP.NET aplikace je možné tok zosobnění nakonfigurovat v souboru aspnet.config nalezeném ve složce <Windows>\Microsoft.NET\Framework\vx.x.xxxx adresáře.
ASP.NET ve výchozím nastavení zakáže tok zosobnění v souboru aspnet.config pomocí následujícího nastavení konfigurace:
<configuration>
<runtime>
<legacyImpersonationPolicy enabled="true"/>
<alwaysFlowImpersonationPolicy enabled="false"/>
</runtime>
</configuration>
Pokud chcete povolit tok zosobnění, musíte v ASP.NET explicitně použít následující nastavení konfigurace:
<configuration>
<runtime>
<legacyImpersonationPolicy enabled="false"/>
<alwaysFlowImpersonationPolicy enabled="true"/>
</runtime>
</configuration>
Příklad
Následující příklad ukazuje, jak určit, že identita Windows prochází mezi asynchronními body, i když se zosobnění dosáhne jinými prostředky než spravovanými metodami.
<configuration>
<runtime>
<alwaysFlowImpersonationPolicy enabled="true"/>
</runtime>
</configuration>
Viz také
- Konfigurace aplikací pomocí konfiguračních souborů
- schéma nastavení modulu runtime
- schématu konfiguračního souboru
- <element legacyImpersonationPolicy>