Share via


SecurityContext.SuppressFlow メソッド

定義

複数の非同期スレッド間におけるセキュリティ コンテキストのフローを中止します。

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

戻り値

フローを復元するための AsyncFlowControl 構造体。

属性

例外

.NET 5 以降 (.NET Core を含む): すべての場合。

注釈

非同期操作の現在のスレッドに対する情報の SecurityContext フローを抑制するには、このメソッドを使用します。

共通言語ランタイム (CLR) は、マネージド コードを使用して実行される偽装操作のみを認識します。 CLR には、偽装を行うアンマネージ コードへのプラットフォーム呼び出しや Win32 関数の呼び出しなど、マネージド コードの外部で実行される偽装に関する知識がありません。 非同期ポイント間で ID をフローするには、マネージド WindowsIdentity メソッドと WindowsImpersonationContext メソッドを使用する必要があります。

オブジェクトを Undo 以前の状態に戻すには、返された AsyncFlowControl 構造体で SecurityContext メソッドを使用します。

このメソッドは、for SecurityPermissionFlag.Infrastructure アクセス許可でSecurityAction.LinkDemand保護されています。 完全に信頼されたコンポーネントは、このメソッドを呼び出して、非同期呼び出し中に情報のフローを SecurityContext 抑制できます。 フローが抑制されると、 メソッドは を Capture 返します null

適用対象