getFileSecurityA 函式 (winbase.h)

GetFileSecurity函式會取得檔案或目錄安全性的指定資訊。 取得的資訊受限於呼叫者的存取權限和 許可權

GetNamedSecurityInfo函式提供的功能類似于檔案的 GetFileSecurity,以及其他類型的物件。

語法

BOOL GetFileSecurityA(
  [in]            LPCSTR               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
標頭 winbase.h (包含 Windows.h)
程式庫 Advapi32.lib
Dll Advapi32.dll

另請參閱

GetKernelObjectSecurity

GetNamedSecurityInfo

GetPrivateObjectSecurity

GetUserObjectSecurity

低階存取控制

低階存取控制函式

SECURITY_DESCRIPTOR

SECURITY_INFORMATION

SetFileSecurity