GetTokenInformation 関数 (securitybaseapi.h)

GetTokenInformation 関数は、アクセス トークンに関する指定された種類の情報を取得します。 呼び出し元プロセスには、情報を取得するための適切なアクセス権が必要です。

ユーザーが特定のグループのメンバーであるかどうかを判断するには、 CheckTokenMembership 関数を使用します。 アプリ コンテナー トークンのグループ メンバーシップを確認するには、 CheckTokenMembershipEx 関数を使用します。

構文

BOOL GetTokenInformation(
  [in]            HANDLE                  TokenHandle,
  [in]            TOKEN_INFORMATION_CLASS TokenInformationClass,
  [out, optional] LPVOID                  TokenInformation,
  [in]            DWORD                   TokenInformationLength,
  [out]           PDWORD                  ReturnLength
);

パラメーター

[in] TokenHandle

情報の取得元となるアクセス トークンへのハンドル。 TokenInformationClass で TokenSource が指定されている場合、ハンドルにはTOKEN_QUERY_SOURCEアクセス権が必要です。 他のすべての TokenInformationClass 値については、ハンドルにTOKEN_QUERYアクセス権が必要です。

[in] TokenInformationClass

関数が取得する情報の種類を識別するために、 TOKEN_INFORMATION_CLASS 列挙型の値を指定します。 TokenIsAppContainer をチェックし、0 を返す呼び出し元は、呼び出し元トークンが識別レベルの偽装トークンではないことも確認する必要があります。 現在のトークンがアプリ コンテナーではなく、ID レベルのトークンである場合は、 AccessDenied を返す必要があります。

[out, optional] TokenInformation

関数が要求された情報を入力するバッファーへのポインター。 このバッファーに格納される構造体は、 TokenInformationClass パラメーターで指定された情報の種類によって異なります。

[in] TokenInformationLength

TokenInformation パラメーターが指すバッファーのサイズをバイト単位で指定します。 TokenInformationNULL の場合、このパラメーターは 0 である必要があります。

[out] ReturnLength

TokenInformation パラメーターが指すバッファーに必要なバイト数を受け取る変数へのポインター。 この値が TokenInformationLength パラメーターで指定された値より大きい場合、関数は失敗し、バッファーにデータを格納しません。

TokenInformationClass パラメーターの値が TokenDefaultDacl で、トークンに既定の DACL がない場合、関数は ReturnLength が指す変数をTOKEN_DEFAULT_DACL)sizeof(設定し、TOKEN_DEFAULT_DACL構造体の DefaultDacl メンバーを NULL に設定します。

戻り値

関数が成功すると、戻り値は 0 以外になります。

関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。

要件

   
サポートされている最小のクライアント Windows XP [デスクトップ アプリ | UWP アプリ]
サポートされている最小のサーバー Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー securitybaseapi.h (Windows.h を含む)
Library Advapi32.lib
[DLL] Advapi32.dll

関連項目

アクセス制御の概要

AdjustTokenGroups

AdjustTokenPrivileges

基本的なAccess Control関数

CheckTokenMembership

OpenProcessToken

OpenThreadToken

SECURITY_IMPERSONATION_LEVEL

SetTokenInformation

TOKEN_DEFAULT_DACL

TOKEN_GROUPS

TOKEN_GROUPS_AND_PRIVILEGES

TOKEN_INFORMATION_CLASS

TOKEN_OWNER

TOKEN_PRIMARY_GROUP

TOKEN_PRIVILEGES

TOKEN_SOURCE

TOKEN_STATISTICS

TOKEN_TYPE

TOKEN_USER