共用方式為


安全性全域函式

這些函式支援修改 SID 和 ACL 物件。

重要

下表所列的函式不能用於在 Windows 執行階段 中執行的應用程式。

名稱 描述
AtlGetDacl 呼叫此函式可擷取所指定物件的判別存取控制清單 (DACL) 資訊。
AtlSetDacl 呼叫此函式可設定所指定物件的判別存取控制清單 (DACL) 資訊。
AtlGetGroupSid 呼叫此函式可擷取物件的群組安全性識別碼 (SID)。
AtlSetGroupSid 呼叫此函式可設定物件的群組安全性識別碼 (SID)。
AtlGetOwnerSid 呼叫此函式可擷取物件的擁有者安全性識別碼 (SID)。
AtlSetOwnerSid 呼叫此函式可設定物件的擁有者安全性識別碼 (SID)。
AtlGetSacl 呼叫此函式可擷取所指定物件的系統存取控制清單 (SACL) 資訊。
AtlSetSacl 呼叫此函式可設定所指定物件的系統存取控制清單 (SACL) 資訊。
AtlGetSecurityDescriptor 呼叫此函式可擷取所指物件的安全性描述元。

需求

標頭: atlsecurity.h

AtlGetDacl

呼叫此函式可擷取所指定物件的判別存取控制清單 (DACL) 資訊。

重要

此函式不能用於在 Windows 執行階段 中執行的應用程式。

inline bool AtlGetDacl(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    CDacl* pDacl) throw();

參數

物件
要擷取安全性信息的 物件句柄。

ObjectType
指定來自 SE_OBJECT_TYPE 列舉的值,這個值表示 hObject 參數所識別的物件類型。

pDacl
DACL 物件的指標,其中包含擷取的安全性資訊。

傳回值

如果成功則傳回 true,失敗則傳回 false。

備註

在偵錯組建中,如果 hObjectpDacl 無效,就會發生判斷提示錯誤。

AtlSetDacl

呼叫此函式可設定所指定物件的判別存取控制清單 (DACL) 資訊。

重要

此函式不能用於在 Windows 執行階段 中執行的應用程式。

inline bool AtlSetDacl(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    const CDacl& rDacl,
    DWORD dwInheritanceFlowControl = 0) throw(...);

參數

物件
要設定安全性信息的物件句柄。

ObjectType
指定來自 SE_OBJECT_TYPE 列舉的值,這個值表示 hObject 參數所識別的物件類型。

rDacl
包含新安全性資訊的 DACL。

dwInheritanceFlowControl
繼承流程控制。 此值可以是 0(預設值)、PROTECTED_DACL_SECURITY_INFORMATION或UNPROTECTED_DACL_SECURITY_INFORMATION。

傳回值

如果成功則傳回 true,失敗則傳回 false。

備註

在偵錯組建中,如果 hObject 無效,或 dwInheritanceFlowControl 不是三個允許值之一,就會發生判斷提示錯誤。

需求

標頭: atlsecurity.h

AtlGetGroupSid

呼叫此函式可擷取物件的群組安全性識別碼 (SID)。

重要

此函式不能用於在 Windows 執行階段 中執行的應用程式。

inline bool AtlGetGroupSid(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    CSid* pSid) throw(...);

參數

物件
要從中擷取安全性信息的 物件句柄。

ObjectType
指定來自 SE_OBJECT_TYPE 列舉的值,這個值表示 hObject 參數所識別的物件類型。

pSid
對象指標 CSid ,其中包含新的安全性資訊。

傳回值

如果成功則傳回 true,失敗則傳回 false。

需求

標頭: atlsecurity.h

AtlSetGroupSid

呼叫此函式可設定物件的群組安全性識別碼 (SID)。

重要

此函式不能用於在 Windows 執行階段 中執行的應用程式。

inline bool AtlSetGroupSid(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    const CSid& rSid) throw(...);

參數

物件
要設定安全性信息的物件句柄。

ObjectType
指定來自 SE_OBJECT_TYPE 列舉的值,這個值表示 hObject 參數所識別的物件類型。

rSid
包含 CSid 新安全性信息的物件。

傳回值

如果成功則傳回 true,失敗則傳回 false。

需求

標頭: atlsecurity.h

AtlGetOwnerSid

呼叫此函式可擷取物件的擁有者安全性識別碼 (SID)。

重要

此函式不能用於在 Windows 執行階段 中執行的應用程式。

inline bool AtlGetOwnerSid(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    CSid* pSid) throw(...);

參數

物件
要從中擷取安全性信息的 物件句柄。

ObjectType
指定來自 SE_OBJECT_TYPE 列舉的值,這個值表示 hObject 參數所識別的物件類型。

pSid
對象指標 CSid ,其中包含新的安全性資訊。

傳回值

如果成功則傳回 true,失敗則傳回 false。

需求

標頭: atlsecurity.h

AtlSetOwnerSid

呼叫此函式可設定物件的擁有者安全性識別碼 (SID)。

重要

此函式不能用於在 Windows 執行階段 中執行的應用程式。

inline bool AtlSetOwnerSid(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    const CSid& rSid) throw(...);

參數

物件
要設定安全性信息的物件句柄。

ObjectType
指定來自 SE_OBJECT_TYPE 列舉的值,這個值表示 hObject 參數所識別的物件類型。

rSid
包含 CSid 新安全性信息的物件。

傳回值

如果成功則傳回 true,失敗則傳回 false。

需求

標頭: atlsecurity.h

AtlGetSacl

呼叫此函式可擷取所指定物件的系統存取控制清單 (SACL) 資訊。

重要

此函式不能用於在 Windows 執行階段 中執行的應用程式。

inline bool AtlGetSacl(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    CSacl* pSacl,
    bool bRequestNeededPrivileges = true) throw(...);

參數

物件
要從中擷取安全性信息的 物件句柄。

ObjectType
指定來自 SE_OBJECT_TYPE 列舉的值,這個值表示 hObject 參數所識別的物件類型。

pSacl
SACL 物件的指標,其中包含擷取的安全性資訊。

bRequestNeededPrivileges
如果為 true,函式會嘗試啟用SE_SECURITY_NAME許可權,並在完成時還原。

傳回值

如果成功則傳回 true,失敗則傳回 false。

備註

如果要 AtlGetSacl 在許多不同的物件上呼叫多次,在呼叫函式之前啟用SE_SECURITY_NAME許可權會更有效率,且 bRequestNeededPrivileges 設定為 false。

需求

標頭: atlsecurity.h

AtlSetSacl

呼叫此函式可設定所指定物件的系統存取控制清單 (SACL) 資訊。

重要

此函式不能用於在 Windows 執行階段 中執行的應用程式。

inline bool AtlSetSacl(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    const CSacl& rSacl,
    DWORD dwInheritanceFlowControl = 0,
    bool bRequestNeededPrivileges = true) throw(...);

參數

物件
要設定安全性信息的物件句柄。

ObjectType
指定來自 SE_OBJECT_TYPE 列舉的值,這個值表示 hObject 參數所識別的物件類型。

rSacl
包含新安全性資訊的 SACL。

dwInheritanceFlowControl
繼承流程控制。 此值可以是0(預設值)、PROTECTED_SACL_SECURITY_INFORMATION或UNPROTECTED_SACL_SECURITY_INFORMATION。

bRequestNeededPrivileges
如果為 true,函式會嘗試啟用SE_SECURITY_NAME許可權,並在完成時還原。

傳回值

如果成功則傳回 true,失敗則傳回 false。

備註

在偵錯組建中,如果 hObject 無效,或 dwInheritanceFlowControl 不是三個允許值之一,就會發生判斷提示錯誤。

如果要 AtlSetSacl 在許多不同的物件上呼叫多次,在呼叫函式之前啟用SE_SECURITY_NAME許可權會更有效率,且 bRequestNeededPrivileges 設定為 false。

需求

標頭: atlsecurity.h

AtlGetSecurityDescriptor

呼叫此函式可擷取所指物件的安全性描述元。

重要

此函式不能用於在 Windows 執行階段 中執行的應用程式。

inline bool AtlGetSecurityDescriptor(
    LPCTSTR pszObjectName,
    SE_OBJECT_TYPE ObjectType,
    CSecurityDesc* pSecurityDescriptor,
    SECURITY_INFORMATION requestedInfo = OWNER_SECURITY_INFORMATION |
    GROUP_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION |
    SACL_SECURITY_INFORMATION,
bool bRequestNeededPrivileges = true) throw(...);

參數

pszObjectName
Null 終止字串的指標,指定要從中擷取安全性資訊的物件名稱。

ObjectType
指定來自 SE_OBJECT_TYPE 列舉的值,這個值表示 pszObjectName 參數所識別的物件類型。

pSecurityDescriptor
接收要求之安全性描述元的物件。

requestedInfo
一組 SECURITY_INFORMATION 位旗標,表示要擷取的安全性資訊類型。 此參數可以是下列值的組合。

bRequestNeededPrivileges
如果為 true,函式會嘗試啟用SE_SECURITY_NAME許可權,並在完成時還原。

傳回值

如果成功則傳回 true,失敗則傳回 false。

備註

如果要 AtlGetSecurityDescriptor 在許多不同的物件上呼叫多次,在呼叫函式之前啟用SE_SECURITY_NAME許可權會更有效率,且 bRequestNeededPrivileges 設定為 false。

需求

標頭: atlsecurity.h

另請參閱

函數