Функция RegSetKeySecurity устанавливает безопасность для открытого ключа реестра.
LONG RegSetKeySecurity(
HKEY hKey, // открытый дескриптор ключа
SECURITY_INFORMATION SecurityInformation, // содержание дескриптора
PSECURITY_DESCRIPTOR pSecurityDescriptor // адрес дескриптора для ключа
);
Параметры:
hKey |
Определяет открытый ключ, для которого устанавливается дескриптор безопасности. |
SecurityInformation |
Определяет структуру SECURITY_INFORMATION, которая указывает содержание дескриптора безопасности. |
pSecurityDescriptor |
Адрес структуры SECURITY_DESCRIPTOR, которая указывает атрибуты безопасности для их установки указанному ключу. |
Возвращаемые значения:
Если функция успешно, возвращается значение ERROR_SUCCESS.
При ошибке, возвращаемое значение – это код ошибки, объявленный в WINERROR.H. Вы можете использовать функцию FormatMessage с флагом FORMAT_MESSAGE_FROM_SYSTEM для получения общего описания ошибки.
Замечания:
Вызов функции удачен только тогда, когда учытуются следующие условия:
- Если устанавливается владелец или группа владельцев ключа, вызывающий функцию должен иметь разрешение или иметь привилегию SE_TAKE_OWNERSHIP_NAME.
- Если устанавливается список осмотрительного контроля допуска (DACL) ключа, вызывающий должен иметь разрешение WRITE_DAC или быть владельцем объекта.
- Если устанавливается список системного контроля допуска (SACL) ключа, вызывающий должен иметь привилегию SE_SECURITY_NAME
Если hKey является одним из предопределенных ключей, предопределенный ключ должен быть закрыт с помощью RegCloseKey. Это означает, что новая информация о безопасности будет иметь эффект в следующий раз при упоминании предопределенного ключа.
Смотрите также:
RegCloseKey, RegDeleteKey, RegGetKeySecurity, SECURITY_INFORMATION
|