SecurityContext.SuppressFlowWindowsIdentity Method

Definition

Suppresses the flow of the Windows identity portion of the current security context across asynchronous threads.

public:
 static System::Threading::AsyncFlowControl SuppressFlowWindowsIdentity();
public static System.Threading.AsyncFlowControl SuppressFlowWindowsIdentity ();
[System.Security.SecurityCritical]
public static System.Threading.AsyncFlowControl SuppressFlowWindowsIdentity ();
static member SuppressFlowWindowsIdentity : unit -> System.Threading.AsyncFlowControl
[<System.Security.SecurityCritical>]
static member SuppressFlowWindowsIdentity : unit -> System.Threading.AsyncFlowControl
Public Shared Function SuppressFlowWindowsIdentity () As AsyncFlowControl

Returns

A structure for restoring the flow.

Attributes

Exceptions

.NET 5+ (including .NET Core): In all cases.

Remarks

Use this method to suppress the flow of the Windows identity when the SecurityContext migrates across asynchronous threads.

Use the Undo method on the returned AsyncFlowControl structure to return the SecurityContext object to its previous state.

Note

The common language runtime (CLR) is aware of impersonation operations performed using only managed code, not of impersonation performed outside of managed code, such as through platform invoke to unmanaged code or through direct calls to Win32 functions. Only managed WindowsIdentity objects can flow across asynchronous points, unless the alwaysFlowImpersonationPolicy element has been set to true (<alwaysFlowImpersonationPolicy enabled="true"/>). Setting the alwaysFlowImpersonationPolicy element to true specifies that the Windows identity always flows across asynchronous points, regardless of how impersonation was performed. For more information about flowing unmanaged impersonation across asynchronous points, see <alwaysFlowImpersonationPolicy> Element.

Applies to