SecurityContext SecurityContext SecurityContext SecurityContext Class

定義

複数のスレッド間で転送される実行コンテキストのすべてのセキュリティ関連データをカプセル化し、反映します。Encapsulates and propagates all security-related data for execution contexts transferred across threads. このクラスは継承できません。This class cannot be inherited.

public ref class SecurityContext sealed : IDisposable
public sealed class SecurityContext : IDisposable
type SecurityContext = class
    interface IDisposable
Public NotInheritable Class SecurityContext
Implements IDisposable
継承
SecurityContextSecurityContextSecurityContextSecurityContext
実装

注釈

オブジェクトは、オブジェクトWindowsIdentityおよびCompressedStackオブジェクトに格納されている情報を含め、論理スレッドのセキュリティ関連のすべての情報をキャプチャします。 SecurityContextA SecurityContext object captures all security-related information for a logical thread, including the information contained in the WindowsIdentity and CompressedStack objects. この構成により、が非同期スレッド間でコピーおよび転送されるときに、 SecurityContextスタック上の Windows id とセキュリティ要素が自動的に伝達されます。This configuration allows the Windows identity and the security elements on the stack to be propagated automatically when the SecurityContext is copied and transferred across asynchronous threads.

注意

共通言語ランタイム (CLR) は、マネージコードの外部で実行される偽装操作 (アンマネージコードへのプラットフォーム呼び出し、Win32 関数への直接呼び出しなど) を使用して実行される偽装操作を認識します。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. 要素がWindowsIdentity true ()に設定されていない限り、非同期のポイント間でフローできるのはマネージオブジェクトだけです。<alwaysFlowImpersonationPolicy enabled="true"/> alwaysFlowImpersonationPolicyOnly managed WindowsIdentity objects can flow across asynchronous points, unless the alwaysFlowImpersonationPolicy element has been set to true (<alwaysFlowImpersonationPolicy enabled="true"/>). 要素をに設定trueすると、偽装がどのように実行されたかに関係なく、Windows id が常に非同期のポイントでフローすることが指定されます。 alwaysFlowImpersonationPolicySetting the alwaysFlowImpersonationPolicy element to true specifies that the Windows identity always flows across asynchronous points, regardless of how impersonation was performed. 非同期ポイント間でアンマネージ偽装をフローする方法の詳細については、「 <alwaysFlowImpersonationPolicy>要素」を参照してください。For more information about flowing unmanaged impersonation across asynchronous points, see <alwaysFlowImpersonationPolicy> Element.

は、大規模ExecutionContextなの一部であり、フローまたExecutionContextは移行時にフローまたは移行します。 SecurityContextThe SecurityContext is part of the larger ExecutionContext and flows or migrates when the ExecutionContext flows or migrates.

重要

この型は IDisposable インターフェイスを実装します。This type implements the IDisposable interface. 型の使用が完了したら、直接的または間接的に型を破棄する必要があります。When you have finished using the type, you should dispose of it either directly or indirectly. 直接的に型を破棄するには、try / catch ブロック内で Dispose メソッドを呼び出します。To dispose of the type directly, call its Dispose method in a try/catch block. 間接的に型を破棄するには、using (C# の場合) または Using (Visual Basic 言語) などの言語構成要素を使用します。To dispose of it indirectly, use a language construct such as using (in C#) or Using (in Visual Basic). 詳細については、IDisposable インターフェイスに関するトピック内の「IDisposable を実装するオブジェクトの使用」セクションを参照してください。For more information, see the "Using an Object that Implements IDisposable" section in the IDisposable interface topic.

メソッド

Capture() Capture() Capture() Capture()

現在のスレッドのセキュリティ コンテキストをキャプチャします。Captures the security context for the current thread.

CreateCopy() CreateCopy() CreateCopy() CreateCopy()

現在のセキュリティ コンテキストのコピーを作成します。Creates a copy of the current security context.

Dispose() Dispose() Dispose() Dispose()

SecurityContext クラスの現在のインスタンスによって使用されているすべてのリソースを解放します。Releases all resources used by the current instance of the SecurityContext class.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
IsFlowSuppressed() IsFlowSuppressed() IsFlowSuppressed() IsFlowSuppressed()

セキュリティ コンテキストのフローが中止されたかどうかを判断します。Determines whether the flow of the security context has been suppressed.

IsWindowsIdentityFlowSuppressed() IsWindowsIdentityFlowSuppressed() IsWindowsIdentityFlowSuppressed() IsWindowsIdentityFlowSuppressed()

現在のセキュリティ コンテキストの Windows ID 部分のフローが中止されたかどうかを判断します。Determines whether the flow of the Windows identity portion of the current security context has been suppressed.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
RestoreFlow() RestoreFlow() RestoreFlow() RestoreFlow()

複数の非同期スレッド間におけるセキュリティ コンテキストのフローを復元します。Restores the flow of the security context across asynchronous threads.

Run(SecurityContext, ContextCallback, Object) Run(SecurityContext, ContextCallback, Object) Run(SecurityContext, ContextCallback, Object) Run(SecurityContext, ContextCallback, Object)

現在のスレッドの指定されたセキュリティ コンテキストで、指定されたメソッドを実行します。Runs the specified method in the specified security context on the current thread.

SuppressFlow() SuppressFlow() SuppressFlow() SuppressFlow()

複数の非同期スレッド間におけるセキュリティ コンテキストのフローを中止します。Suppresses the flow of the security context across asynchronous threads.

SuppressFlowWindowsIdentity() SuppressFlowWindowsIdentity() SuppressFlowWindowsIdentity() SuppressFlowWindowsIdentity()

複数の非同期スレッドにおける現在のセキュリティ コンテキストの Windows ID 部分のフローを中止します。Suppresses the flow of the Windows identity portion of the current security context across asynchronous threads.

ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)

適用対象