GetFileSecurityW 函式 (securitybaseapi.h)
GetFileSecurity 函式會取得檔案或目錄安全性的指定資訊。 取得的資訊受限於呼叫者的訪問許可權和 許可權。
GetNamedSecurityInfo 函式提供類似檔案的 GetFileSecurity 功能,以及其他類型的物件。
語法
BOOL GetFileSecurityW(
[in] LPCWSTR lpFileName,
[in] SECURITY_INFORMATION RequestedInformation,
[out, optional] PSECURITY_DESCRIPTOR pSecurityDescriptor,
[in] DWORD nLength,
[out] LPDWORD lpnLengthNeeded
);
參數
[in] lpFileName
Null 終止字串的指標,指定擷取安全性資訊的檔案或目錄。
[in] RequestedInformation
識別所要求安全性資訊的 SECURITY_INFORMATION 值。
[out, optional] pSecurityDescriptor
緩衝區的指標,這個緩衝區會接收 lpFileName 參數所指定之物件之安全性描述元的複本。 呼叫 進程 必須具有許可權,才能檢視物件安全性狀態的指定層面。 SECURITY_DESCRIPTOR結構會以自我相對安全性描述元格式傳回。
[in] nLength
指定 pSecurityDescriptor 參數所指向之緩衝區的大小,以位元組為單位。
[out] lpnLengthNeeded
變數的指標,可接收儲存完整 安全性描述元所需的位元組數目。 如果傳回的位元組數目小於或等於 nLength,則會在輸出緩衝區中傳回整個安全性描述元;否則,不會傳回任何描述項。
傳回值
如果函式成功,則傳回非零的值。
如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
備註
若要從指定檔案或目錄的安全性描述元讀取擁有者、群組或 DACL ,檔案或目錄的 DACL 必須授與呼叫端的存取權READ_CONTROL,或者呼叫端必須是檔案或目錄的擁有者。
若要讀取檔案或目錄的 SACL ,必須啟用呼叫程式的SE_SECURITY_NAME許可權。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | securitybaseapi.h (包括 Windows.h) |
程式庫 | Advapi32.lib |
Dll | Advapi32.dll |
另請參閱
GetKernelObjectSecurity
GetNamedSecurityInfo
GetPrivateObjectSecurity
GetUserObjectSecurity
低階 存取控制
低階 存取控制 函式
SECURITY_DESCRIPTOR
SECURITY_INFORMATION
SetFileSecurity