Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Эта версия этой функции не поддерживается. Поддерживается широкая версия этой функции, TreeResetNamedSecurityInfoW.
Синтаксис
DWORD TreeResetNamedSecurityInfoA(
[in] LPSTR pObjectName,
[in] SE_OBJECT_TYPE ObjectType,
[in] SECURITY_INFORMATION SecurityInfo,
[in, optional] PSID pOwner,
[in, optional] PSID pGroup,
[in, optional] PACL pDacl,
[in, optional] PACL pSacl,
[in] BOOL KeepExplicit,
[in, optional] FN_PROGRESS fnProgress,
[in] PROG_INVOKE_SETTING ProgressInvokeSetting,
[in, optional] PVOID Args
);
Параметры
[in] pObjectName
Указатель на строку null-terminated, указывающую имя объекта корневого узла для объектов, которые должны получать обновленные сведения о безопасности. Поддерживаемые объекты — это разделы реестра и объекты файлов. Описание строковых форматов для различных типов объектов см. в SE_OBJECT_TYPE.
[in] ObjectType
Значение перечисления SE_OBJECT_TYPE, указывающее тип объекта, именованного параметром pObjectName. Поддерживаемые значения : SE_REGISTRY_KEY и SE_FILE_OBJECT для разделов реестра и объектов файлов соответственно.
[in] SecurityInfo
Набор битовых флагов, указывающих тип сведений о безопасности для сброса. Этот параметр может быть сочетанием SECURITY_INFORMATION битовых флагов.
[in, optional] pOwner
Указатель на структуру sid, которая определяет владельца объекта. Идентификатор безопасности должен быть идентификатором безопасности, который может быть назначен в качестве идентификатора безопасности дескриптора безопасности. Параметр SecurityInfo должен содержать флаг OWNER_SECURITY_INFORMATION. Чтобы задать владельца, вызывающий объект должен иметь WRITE_OWNER доступ к каждому объекту, включая корневой объект. Если идентификатор безопасности владельца не задан, этот параметр можно null.
[in, optional] pGroup
Указатель на структуру идентификатора безопасности
[in, optional] pDacl
Указатель на структуру списка управления доступом (ACL), представляющую новый DACL для сбрасываемых объектов. Параметр SecurityInfo
[in, optional] pSacl
Указатель на структуру ACL, представляющую новый saCL для сбрасываемых объектов. Параметр SecurityInfo
[in] KeepExplicit
Логическое значение, определяющее, хранятся или удаляются ли явным образом определенные acES для поддеревного дерева. Если KeepExplicittrue, то явным образом определенные acES хранятся для каждого поддеревого daCL и SACL, а наследуемые acEs заменяются унаследованными acEs из pDacl и pSacl. Если KeepExplicit является FALSE, то явным образом определенные ACEs для каждого поддеревого daCL и SACL удаляются до замены унаследованных acEs из pDacl и pSacl.
[in, optional] fnProgress
Указатель на функцию, используемую для отслеживания хода выполнения функции TreeResetNamedSecurityInfo. Прототип функции хода выполнения:
#include <windows.h>
#include <Aclapi.h>
typedef VOID (*FN_PROGRESS) (
IN LPWSTR pObjectName, // Name of object just processed
IN DWORD Status, // Status of operation on object
IN OUT PPROG_INVOKE_SETTING pInvokeSetting, // When to set
IN PVOID Args, // Caller specific data
IN BOOL SecuritySet // Whether security was set
);
Функция хода выполнения предоставляет вызывающую функцию сведения о ходе выполнения и ошибке при обработке узлов. Вызывающий объект указывает функцию хода выполнения в fnProgress, а во время операции дерева TreeResetNamedSecurityInfo передает имя последнего обработанного объекта, состояние ошибки этой операции и текущее значение PROG_INVOKE_SETTING. Вызывающий объект может изменить значение PROG_INVOKE_SETTING с помощью pInvokeSetting.
Если функция хода выполнения не используется, задайте для этого параметра значение NULL.
[in] ProgressInvokeSetting
Значение перечисления PROG_INVOKE_SETTING, указывающее начальный параметр функции хода выполнения.
[in, optional] Args
Указатель на VOID для аргументов функции хода выполнения, указанных вызывающим элементом.
Возвращаемое значение
Если функция выполнена успешно, функция возвращает ERROR_SUCCESS.
Если функция завершается ошибкой, она возвращает код ошибки, определенный в WinError.h.
Замечания
Настройка null владельца, группы, DACL или SACL не поддерживается этой функцией.
Если вызывающий объект не содержит надлежащих привилегий и разрешений для поддержки запрошенного владельца, группы, DACL и saCL, то никакие обновления не выполняются.
Эта функция аналогична функции TreeSetNamedSecurityInfo:
- Если параметр
KeepExplicit TreeResetNamedSecurityInfo имеет значениеTRUE , то функция эквивалентнаTreeSetNamedSecurityInfo с параметром dwActiondwAction TREE_SEC_INFO_RESET_KEEP_EXPLICIT. - Если параметр KeepExplicitTreeResetNamedSecurityInfo имеет значение FALSE, то функция эквивалентна TreeSetNamedSecurityInfo с параметром dwAction dwAction значение TREE_SEC_INFO_RESET.
Заметка
Заголовок aclapi.h определяет TreeResetNamedSecurityInfo как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
| Требование | Ценность |
|---|---|
| минимальные поддерживаемые клиентские | Windows XP [только классические приложения] |
| минимальный поддерживаемый сервер | Windows Server 2003 [только классические приложения] |
| целевая платформа | Виндоус |
| заголовка | aclapi.h |
| библиотеки |
Advapi32.lib |
| DLL | Advapi32.dll |