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 的呼叫端也應該確認呼叫端權杖不是識別層級模擬權杖。 如果目前的權杖不是應用程式容器,而是身分識別層級權杖,您應該傳回 AccessDenied。
[out, optional] TokenInformation
函式填入要求的資訊的緩衝區指標。 放入這個緩衝區的結構取決於 TokenInformationClass 參數所指定的資訊類型。
[in] TokenInformationLength
指定 TokenInformation 參數所指向緩衝區的大小,以位元組為單位。 如果 TokenInformation 為 Null,此參數必須為零。
[out] ReturnLength
變數的指標,接收 TokenInformation 參數所指向之緩衝區所需的位元組數目。 如果此值大於 TokenInformationLength 參數中指定的值,則函式會失敗,而且不會在緩衝區中儲存任何資料。
如果TokenInformationClass參數的值是 TokenDefaultDacl,而且權杖沒有預設的 DACL,則函式會將ReturnLengthsizeof(
指向的變數設定為TOKEN_DEFAULT_DACL)
,並將TOKEN_DEFAULT_DACL結構的DefaultDacl成員設定為Null。
傳回值
如果函式成功,則傳回非零的值。
如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
需求
最低支援的用戶端 | Windows XP [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2003 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | securitybaseapi.h (包含 Windows.h) |
程式庫 | Advapi32.lib |
Dll | Advapi32.dll |