OpenThreadToken 関数 (processthreadsapi.h)
OpenThreadToken 関数は、スレッドに関連付けられているアクセス トークンを開きます。
構文
BOOL OpenThreadToken(
[in] HANDLE ThreadHandle,
[in] DWORD DesiredAccess,
[in] BOOL OpenAsSelf,
[out] PHANDLE TokenHandle
);
パラメーター
[in] ThreadHandle
アクセス トークンが開かれているスレッドへのハンドル。
[in] DesiredAccess
アクセス トークンへの要求されたアクセスの種類を指定するアクセス マスクを指定します。 これらの要求されたアクセスの種類は、トークンの 随意アクセス制御リスト (DACL) に対して調整され、許可または拒否されるアクセスを決定します。
アクセス トークンのアクセス権の一覧については、「 Access-Token オブジェクトのアクセス権」を参照してください。
[in] OpenAsSelf
アクセス チェックがプロセス レベルのセキュリティ コンテキストに対して行われる場合は TRUE。
OpenThreadToken 関数を呼び出すスレッドの現在のセキュリティ コンテキストに対してアクセスチェックを行う場合は FALSE。
OpenAsSelf パラメーターを使用すると、呼び出し元が SecurityIdentification レベルでトークンを偽装しているときに、この関数の呼び出し元は、指定したスレッドのアクセス トークンを開きます。 このパラメーターを指定しないと、 SecurityIdentification 偽装レベルを使用してエグゼクティブ レベルのオブジェクトを開くことができないため、呼び出し元のスレッドは、指定されたスレッドでアクセス トークンを開くことができません。
[out] TokenHandle
新しく開かれたアクセス トークンへのハンドルを受け取る変数へのポインター。
戻り値
関数が成功すると、戻り値は 0 以外になります。
関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。 トークンに匿名の偽装レベルがある場合、トークンは開かされず 、OpenThreadToken はエラーとしてERROR_CANT_OPEN_ANONYMOUS設定します。
解説
匿名偽装レベルのトークンを開くことができません。
CloseHandle を呼び出して、TokenHandle パラメーターから返されたアクセス トークン ハンドルを閉じます。
要件
サポートされている最小のクライアント | Windows XP [デスクトップ アプリ | UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | processthreadsapi.h (Windows.h を含む) |
Library | Advapi32.lib |
[DLL] | Advapi32.dll |