Поделиться через


CSecurityDesc::SetDacl

Задает информацию в список управления доступом на уровне пользователей (DACL). Если список управления доступом на уровне пользователей уже присутствует в дескрипторе безопасности, оно заменено.

inline void SetDacl( 
   bool bPresent = true, 
   bool bDefaulted = false  
) throw(...); 
inline void SetDacl( 
   const CDacl & Dacl, 
   bool bDefaulted = false  
) throw(...);

Параметры

  • Dacl
    Ссылка на значение, указывающее CDacl DACL для дескриптора безопасности. Этот параметр не должен иметь значение null. Чтобы установить НУЛЕВОЙ DACL в дескрипторе безопасности, первая форма метода следует использовать с bPresent присвойте значение false.

  • bPresent
    Определяет пометить указывающее наличие DACL в дескрипторе безопасности. Если этот параметр имеет значение true, то метод устанавливает пометить SE_DACL_PRESENT в структуре SECURITY_DESCRIPTOR_CONTROL и использует значения в параметрах Dacl и bDefaulted. Если он равен false, то метод очищает пометить SE_DACL_PRESENT и bDefaulted игнорирован.

  • bDefaulted
    Определяет пометить, указывающий источник DACL. Если пометить значение true, то этот список DACL было восстановлено некоторым неисправным механизмом. Если false, DACL явно указано пользователем. Метод сохраняет это значение во флаге SE_DACL_DEFAULTED структуры SECURITY_DESCRIPTOR_CONTROL. Если этот параметр не указан, то пометить SE_DACL_DEFAULTED очистки.

Возвращаемое значение

Возвращает значение true, если операция выполнена успешно; в противном случае — значение false.

Заметки

Важное различие между пустым и на несуществующую DACL. Если список управления доступом на уровне пользователей пуст, он не содержит элементов управления доступом и правами доступа явно не были предоставлены. В результате доступ к объекту явно отключить. Если объект не имеет DACL, с другой стороны, защита не присвоена к объекту, и любой запрос предоставление доступа.

Требования

Header: atlsecurity.h

См. также

Ссылки

CSecurityDesc Class

SetSecurityDescriptorDacl

CSecurityDesc::SetControl

CSecurityDesc::SetGroup

CSecurityDesc::SetOwner

CSecurityDesc::SetSacl

CSecurityDesc::GetDacl