<alwaysFlowImpersonationPolicy> Öğesi

Kimliğe bürünme işlemi ne olursa olsun, Windows kimliğinin her zaman zaman zaman uyumsuz noktalar arasında aktığını belirtir.

<Yapılandırma>
  <Çalışma zamanı>
    <alwaysFlowImpersonationPolicy>

Syntax

<alwaysFlowImpersonationPolicy
  enabled="true|false"/>  

Öznitelikler ve Öğeler

Öznitelikler, alt ve üst öğeler aşağıdaki bölümlerde açıklanmaktadır.

Öznitelikler

Öznitelik Açıklama
enabled Gerekli öznitelik.

Windows kimliğinin zaman uyumsuz noktalar arasında akıp akmadığını gösterir.

etkin Öznitelik

Değer Açıklama
false Kimliğe bürünme gibi Impersonateyönetilen yöntemler aracılığıyla gerçekleştirilmediği sürece Windows kimliği zaman uyumsuz noktalar arasında akmıyor. Bu varsayılan seçenektir.
true Windows kimliği, kimliğe bürünme işlemine bakılmaksızın her zaman zaman zaman uyumsuz noktalar arasında akar.

Alt Öğeler

Yok.

Üst Öğeler

Öğe Açıklama
configuration Her yapılandırma dosyasında yer alan ve ortak dil çalışma zamanı ve .NET Framework uygulamaları tarafından kullanılan kök öğe.
runtime Derleme bağlama ve atık toplama hakkında bilgi içerir.

Açıklamalar

.NET Framework sürüm 1.0 ve 1.1'de Windows kimliği zaman uyumsuz noktalarda akmıyor. .NET Framework sürüm 2.0'da, şu anda yürütülen iş parçacığı hakkında bilgi içeren ve bunu bir uygulama etki alanı içindeki zaman uyumsuz noktalar arasında akışa alan bir nesne vardırExecutionContext. WindowsIdentity ayrıca, kimliğe bürünme işleminin yerel yöntemlere platform çağırma gibi diğer yöntemlerle değil gibi Impersonate yönetilen yöntemler kullanılarak gerçekleştirildiği sürece zaman uyumsuz noktalar arasında akan bilgilerin bir parçası olarak da akar. Bu öğe, kimliğe bürünme işlemine nasıl ulaşıldığına bakılmaksızın Windows kimliğinin zaman uyumsuz noktalar arasında akmasını belirtmek için kullanılır.

Bu varsayılan davranışı iki farklı şekilde değiştirebilirsiniz:

  1. İş parçacığı temelinde yönetilen kodda.

    , veya SecurityContext.SuppressFlow yöntemini kullanarak ExecutionContext.SuppressFlowSecurityContext.SuppressFlowWindowsIdentityve SecurityContext ayarlarını değiştirerek ExecutionContext akışı iş parçacığı başına temelinde gizleyebilirsiniz.

  2. Ortak dil çalışma zamanını (CLR) yüklemek için yönetilmeyen barındırma arabirimi çağrısında.

    CLR'yi yüklemek için yönetilmeyen bir barındırma arabirimi (basit bir yönetilen yürütülebilir dosya yerine) kullanılırsa , CorBindToRuntimeEx İşlevi işlevi çağrısında özel bir bayrak belirtebilirsiniz. İşlemin tamamında uyumluluk modunu etkinleştirmek için CorBindToRuntimeEx İşlevi parametresini olarak STARTUP_ALWAYSFLOW_IMPERSONATIONayarlayınflags.

Yapılandırma Dosyası

.NET Framework bir uygulamada bu öğe yalnızca uygulama yapılandırma dosyasında kullanılabilir.

ASP.NET bir uygulama için kimliğe bürünme akışı, Windows Klasörü>\Microsoft.NET\Framework\vx.x.xxxx dizininde <bulunan aspnet.config dosyasında yapılandırılabilir.

ASP.NET, aşağıdaki yapılandırma ayarlarını kullanarak aspnet.config dosyasındaki kimliğe bürünme akışını varsayılan olarak devre dışı bırakır:

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

ASP.NET'da, bunun yerine kimliğe bürünme akışına izin vermek istiyorsanız, aşağıdaki yapılandırma ayarlarını açıkça kullanmanız gerekir:

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

Örnek

Aşağıdaki örnekte, kimliğe bürünme işlemi yönetilen yöntemler dışında bir yolla gerçekleştirildiğinde bile Windows kimliğinin zaman uyumsuz noktalar arasında akmasının nasıl belirtileceğini gösterir.

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

Ayrıca bkz.