PsReferenceImpersonationToken 関数 (ntifs.h)
PsReferenceImpersonationToken ルーチンは、指定されたスレッドの偽装トークンの参照カウントをインクリメントします。
構文
PACCESS_TOKEN PsReferenceImpersonationToken(
[in, out] PETHREAD Thread,
[out] PBOOLEAN CopyOnOpen,
[out] PBOOLEAN EffectiveOnly,
[out] PSECURITY_IMPERSONATION_LEVEL ImpersonationLevel
);
パラメーター
[in, out] Thread
偽装トークンの参照カウントをインクリメントするスレッドのアドレス。
[out] CopyOnOpen
呼び出し元によって割り当てられたブール変数へのポインター。 トークンを直接開くことができない場合、戻り値としてこのパラメーターは TRUE を受け取ります。 この場合は、トークンを複製し、代わりに複製トークンを使用する必要があります。 トークンを直接開くことができる場合、このパラメーターは FALSE を受け取ります。
[out] EffectiveOnly
呼び出し元によって割り当てられたブール変数へのポインター。 返された場合、このパラメーターは、クライアント セキュリティ コンテキストで現在無効になっているグループと特権をスレッドが有効にできる場合は FALSE を受け取り、それ以外の場合は TRUE を受け取ります。
[out] ImpersonationLevel
呼び出し元によって割り当てられたSECURITY_IMPERSONATION_LEVEL変数へのポインター。 返された場合、このパラメーターは、スレッドがトークンへのアクセスを許可される偽装レベルを指定する値を受け取ります。
戻り値
PsReferenceImpersonationToken は、指定されたスレッドの偽装トークンへのポインターを返します。 スレッドが現在クライアントを偽装していない場合は、NULL ポインターが返されます。
注釈
スレッドが現在クライアントを偽装している場合、 PsReferenceImpersonationToken は偽装トークンの参照カウントをインクリメントし、トークンへのポインターを返します。 返されたポインターが NULL 以外の場合、偽装トークンの参照カウントは、次のいずれかの関数を呼び出してデクリメントする必要があります。
- Windows 2000 の ObDereferenceObject
- PsDereferenceImpersonationToken(Microsoft Windows XP 以降の場合)
セキュリティとアクセス制御の詳細については、 ドライバー開発者向けの Windows セキュリティ モデル と、Windows SDK のこれらのトピックに関するドキュメントを参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 |
対象プラットフォーム | ユニバーサル |
Header | ntifs.h (FltKernel.h、Ntifs.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
DDI コンプライアンス規則 | HwStorPortProhibitedDDIs(storport) |