структура SI_OBJECT_INFO (aclui.h)
Структура SI_OBJECT_INFO используется методом ISecurityInformation::GetObjectInformation для указания сведений, используемых для инициализации редактора управления доступом.
Синтаксис
typedef struct _SI_OBJECT_INFO {
DWORD dwFlags;
HINSTANCE hInstance;
LPWSTR pszServerName;
LPWSTR pszObjectName;
LPWSTR pszPageTitle;
GUID guidObjectType;
} SI_OBJECT_INFO, *PSI_OBJECT_INFO;
Члены
dwFlags
Набор битовых флагов, определяющих параметры редактирования, доступные пользователю. Этот элемент может быть сочетанием следующих значений.
Значение | Значение |
---|---|
|
Если этот флаг установлен, на странице базовых свойств безопасности отображается кнопка Дополнительно . Если пользователь нажимает эту кнопку, система отображает страницу свойств расширенной безопасности , которая позволяет дополнительно редактировать список управления доступом (DACL) объекта.
Объедините этот флаг с флагами SI_EDIT_AUDITS, SI_EDIT_OWNER и SI_EDIT_PROPERTIES, чтобы включить редактирование записей управления доступом (ACE) объекта, владельцев и объектов. |
|
Если этот флаг установлен, экран отображается на кнопке Изменить на страницах расширенного аудита . Для объектов NTFS этот флаг запрашивается, если у пользователя нет доступа к READ_CONTROL или ACCESS_SYSTEM_SECURITY .
Windows Server 2003 и Windows XP: Этот флаг не поддерживается. |
|
Указывает, что объект является контейнером. Если этот флаг установлен, редактор управления доступом включает элементы управления, относящиеся к наследованию разрешений на дочерние объекты. |
|
Если этот флаг установлен, система отключает запрет ACE. Клиенты редактора управления доступом должны реализовать интерфейс ISecurityInformation4 для установки этого флага.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: Этот флаг не поддерживается. |
|
Объединяет флаги SI_EDIT_PERMS, SI_EDIT_OWNER и SI_EDIT_AUDITS. |
|
Если этот флаг установлен и пользователь нажимает кнопку Дополнительно , система отображает страницу свойств расширенной безопасности, включающую страницу свойств Auditing для редактирования saCL объекта. Чтобы отобразить кнопку Дополнительно , установите флаг SI_ADVANCED. |
|
Если этот флаг установлен, отображается страница Действующие разрешения . Этот флаг игнорируется, если объект ISecurityInformation , инициализированный редактор управления доступом, не реализует интерфейс IEffectivePermission . |
|
Если этот флаг установлен и пользователь нажимает кнопку Дополнительно , система отображает страницу расширенных свойств безопасности, содержащую страницу свойств Владельца для изменения владельца объекта. Чтобы отобразить кнопку Дополнительно , установите флаг SI_ADVANCED. |
|
Это значение по умолчанию. На странице базовых свойств безопасности всегда отображаются элементы управления для базового редактирования DACL объекта. Чтобы отключить эти элементы управления, установите флаг SI_READONLY. |
|
Если этот флаг установлен, система включает элементы управления для редактирования ACE, которые применяются к наборам свойств и свойствам объекта. Эти элементы управления доступны только на странице свойств, отображаемой при нажатии пользователем кнопки Дополнительно . |
|
Если этот флаг установлен, система включает редактирование атрибутов. Клиенты редактора управления доступом должны реализовать интерфейс ISecurityInformation4 для установки этого флага.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: Этот флаг не поддерживается. |
|
Если этот флаг установлен, система включает редактирование атрибутов. Клиенты редактора управления доступом должны реализовать интерфейс ISecurityInformation4 для установки этого флага.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: Этот флаг не поддерживается. |
|
Указывает, что редактор управления доступом не может считывать DACL, но может выполнять запись в DACL. Если вызов метода ISecurityInformation::GetSecurity возвращает AccessDenied, пользователь может попытаться добавить новое ACE, и отобразится более подходящее предупреждение. |
|
Если этот флаг установлен, редактор управления доступом скрывает поле проверка, которое позволяет наследуемым ACE распространяться из родительского объекта на этот объект. Если этот флаг не установлен, отображается поле проверка.
Поле проверка не отображается, если флаг SE_DACL_PROTECTED установлен в дескрипторе безопасности объекта. В этом случае DACL объекта защищен от изменения наследуемыми ACE. Если пользователь очищает поле проверка, все унаследованные ACE в дескрипторе безопасности удаляются или преобразуются в ненаследуемые ACE. Прежде чем продолжить это преобразование, система отобразит окно с предупреждением, чтобы подтвердить изменение. |
|
Если этот флаг установлен, редактор управления доступом скрывает вкладку Специальные разрешения на странице Дополнительные параметры безопасности . |
|
Если этот флаг установлен, редактор управления доступом скрывает поле проверка, которое управляет флагом NO_PROPAGATE_INHERIT_ACE. Этот флаг имеет значение только в том случае, если также установлен флаг SI_ADVANCED. |
|
Если задано значение , указывает, что член guidObjectType структуры SI_OBJECT_INFO является допустимым. Это задается в сравнении с ACE для конкретного объекта при определении того, применяется ли ACE к текущему объекту. |
|
Если этот флаг установлен, экран отображается на кнопке Изменить на странице расширенного владельца . Для объектов NTFS этот флаг запрашивается, если у пользователя нет доступа к WRITE_OWNER . Этот флаг действителен, только если запрашивается страница владельца.
Windows Server 2003 и Windows XP: Этот флаг не поддерживается. |
|
Если этот флаг установлен, пользователь не может изменить владельца объекта. Установите этот флаг, если SI_EDIT_OWNER задан, но у пользователя нет разрешения на изменение владельца. |
|
Объедините этот флаг с SI_CONTAINER, чтобы на странице владельца отображалось поле проверка, указывающее, планирует ли пользователь применять нового владельца ко всем дочерним объектам, а также к текущему объекту. Редактор управления доступом не выполняет рекурсию; рекурсию должно выполнять приложение в ISecurityInformation::SetSecurity. |
|
Если этот флаг установлен, элемент pszPageTitle используется в качестве заголовка страницы базовых свойств безопасности. В противном случае используется заголовок по умолчанию. |
|
Если этот флаг установлен, изображение щита отображается на кнопке Изменить на простых и расширенных страницах разрешений . Для объектов NTFS этот флаг запрашивается, если у пользователя нет READ_CONTROL или WRITE_DAC доступа.
Windows Server 2003 и Windows XP: Этот флаг не поддерживается. |
|
Если этот флаг установлен, редактор отображает сведения о безопасности объекта, но элементы управления для их редактирования отключены.
Этот флаг нельзя сочетать с флагом SI_VIEW_ONLY . |
|
Если этот флаг установлен, отображается кнопка По умолчанию . Если пользователь нажимает эту кнопку, редактор управления доступом вызывает метод ISecurityInformation::GetSecurity для получения определяемого приложением дескриптора безопасности по умолчанию. Редактор управления доступом использует этот дескриптор безопасности для повторной инициализации страницы свойств, и пользователю разрешено применять изменения или отмены. |
|
Если этот флаг задан, на странице Разрешения отображается кнопка Сброс значений по умолчанию. |
|
Если этот флаг установлен, отображает поле Сброс разрешений для всех дочерних объектов и включение распространения наследуемых разрешений проверка на странице Разрешения окна параметров контроль доступа. Если этот проверка флажок выбран при нажатии кнопки Применить, то с параметром SecurityInformation объекта ISecurityInformation::SetSecurity с SI_RESET_DACL_TREE выполняется побитовая операция ИЛИ. Эта функция не сбрасывает разрешения и не включает распространение наследуемых разрешений; реализация ISecurityInformation должна сделать это. |
|
Если этот флаг задан, на странице Владелец отображается кнопка Сброс значений по умолчанию. |
|
Если этот флаг установлен, на странице Аудит отображается кнопка Сброс значений по умолчанию. |
|
Если этот флаг задан, отображается поле Сброс записей аудита для всех дочерних объектов и включает распространение наследуемых записей аудита проверка на странице Аудит окна параметры контроль доступа. Если этот проверка флажок выбран при нажатии кнопки Применить, то с параметром SecurityInformation объекта ISecurityInformation::SetSecurity с SI_RESET_SACL_TREE выполняется побитовая операция ИЛИ. Эта функция не сбрасывает разрешения и не включает распространение наследуемых разрешений; реализация ISecurityInformation должна сделать это. |
|
Если этот флаг установлен, на кнопке Изменить атрибута Scope отображается изображение щита. Для объектов NTFS этот флаг запрашивается, если у пользователя нет READ_CONTROL или WRITE_DAC доступа. Клиенты редактора управления доступом должны реализовать интерфейс ISecurityInformation4 для установки этого флага.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: Этот флаг не поддерживается. |
|
Установите этот флаг, если компьютер pszServerName известен как контроллер домена. Если этот флаг установлен, доменное имя включается в список область диалогового окна Добавление пользователей и групп. В противном случае для определения списка область диалогового окна используется компьютер pszServerName. |
|
Этот флаг устанавливается клиентом редактора управления доступом для отображения доступных только для чтения версий диалоговых окон редактора управления доступом. Эти версии диалоговых окон не позволяют изменять разрешения связанного объекта. Клиенты редактора управления доступом должны реализовать интерфейс ISecurityInformation3 для установки этого флага.
Этот флаг нельзя сочетать с флагом SI_READONLY . Windows Server 2003 и Windows XP: Этот флаг не поддерживается. |
hInstance
Идентифицирует модуль, содержащий строковые ресурсы, которые будут использоваться на странице свойств. Методы ISecurityInformation::GetAccessRights и ISecurityInformation::GetInheritTypes могут указывать идентификаторы строковых ресурсов для отображаемых имен.
pszServerName
Указатель на строку Юникода, завершающуюся null, которая называет компьютер, на котором выполняется поиск имен учетных записей и идентификаторов безопасности. Это значение может иметь значение NULL , чтобы указать локальный компьютер. Редактор управления доступом не освобождает этот указатель.
pszObjectName
Указатель на строку Юникода, завершающуюся null, которая называет редактируемый объект. Это имя отображается в заголовке страницы расширенных свойств безопасности и всех окнах сообщений об ошибках, отображаемых редактором управления доступом. Редактор управления доступом не освобождает этот указатель.
pszPageTitle
Указатель на строку Юникода, завершаемую null, которая используется в качестве заголовка страницы базовых свойств безопасности. Этот элемент игнорируется, если флаг SI_PAGE_TITLE не установлен в dwFlags. Если заголовок страницы не указан, используется заголовок по умолчанию. Редактор управления доступом не освобождает этот указатель.
guidObjectType
ИДЕНТИФИКАТОР GUID для объекта . Этот элемент игнорируется, если флаг SI_OBJECT_GUID не установлен в dwFlags.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Верхняя часть | aclui.h |
См. также раздел
ISecurityInformation::GetAccessRights
ISecurityInformation::GetInheritTypes
ISecurityInformation::GetObjectInformation