Глобальные функции безопасности
Эти функции обеспечивают поддержку изменения объектов 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();
Параметры
hObject
Обработайте объект, для которого извлекаются сведения о безопасности.
ObjectType
Указывает значение из перечисления SE_OBJECT_TYPE , указывающее тип объекта, определяемого параметром hObject .
pDacl
Указатель на объект DACL, содержащий полученные сведения о безопасности.
Возвращаемое значение
Возвращает значение true, если операция выполнена успешно; в противном случае — значение false.
Замечания
В отладочных сборках ошибка утверждения будет возникать, если недействителен hObject или pDacl .
AtlSetDacl
Вызывайте эту функцию для задания данных списка управления доступом на уровне пользователя (DACL) указанного объекта.
Внимание
Эту функцию нельзя использовать в приложениях, которые выполняются в среда выполнения Windows.
inline bool AtlSetDacl(
HANDLE hObject,
SE_OBJECT_TYPE ObjectType,
const CDacl& rDacl,
DWORD dwInheritanceFlowControl = 0) throw(...);
Параметры
hObject
Обработайте объект, для которого необходимо задать сведения о безопасности.
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(...);
Параметры
hObject
Дескриптор объекта, из которого извлекаются сведения о безопасности.
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(...);
Параметры
hObject
Обработайте объект, для которого необходимо задать сведения о безопасности.
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(...);
Параметры
hObject
Дескриптор объекта, из которого извлекаются сведения о безопасности.
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(...);
Параметры
hObject
Обработайте объект, для которого необходимо задать сведения о безопасности.
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(...);
Параметры
hObject
Обработайте объект, из которого извлекаются сведения о безопасности.
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(...);
Параметры
hObject
Обработайте объект, для которого необходимо задать сведения о безопасности.
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