Технический форум
Вернуться   Технический форум > Программирование > Библиотека > Система


Ответ
 
Опции темы Опции просмотра
Старый 12.05.2010, 16:58   #1 (permalink)
Aleksan
IT - Specialist
 
Аватар для Aleksan
 
Регистрация: 08.12.2007
Сообщений: 6,815
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 6316
По умолчанию Реестр. Некоторые особенности

Что такое реестр.

Реестр Windows - это большая база данных, физически состоящая из нескольких файлов, хранящихся на жестком диске. Windows постоянно работает с реестром, даже в те моменты, когда компьютер простаивает. Постоянно ищутся и считываются определенные ключи реестра, при запуске программ их настройки берутся из реестра, а при выходе из программы - сохраняются в нем. Таким образом, Windows «запоминает», а вернее, записывает, все настройки, которые были сделаны пользователем. Это касается и настроек программ и настроек самой Windows. Практически каждая программа при установке создает свой раздел в реестре, где она будет хранить настройки и куда будет постоянно обращаться. За счет этого программа, настроенная один раз, будет всегда открываться в том виде, который выбрал пользователь, настраивая ее.
Сама Windows также все свои настройки хранит в реестре. Это и сведения об оборудовании, о компонентах, о пользователях, конфигурации сети и т.д. Настройки интерфейса (обои, цвета и т.п.) так же хранятся в реестре.
Повреждение реестра вызывает большие проблемы в работе Windows. Серьезные разрушения файлов реестра или вообще их потеря (при выходе из строя винчестера) вызовет при загрузке компьютера так называемый BSOD (Blue Screen Of Death или синий экран смерти), который указывает на то, что работа Windows далее невозможна и ошибка настолько серьезна, что Windows не может решить возникшую проблему своими средствами. В таких случаях реестр приходится восстанавливать из резервных копий, созданных либо Windows в процессе работы, либо вручную при резервном копировании. Если резервная копия реестра слишком стара, то восстановление такой копии приведет к неработоспособности многих программ, которые устанавливались после создания копии реестра, притом, что файлы самой программы будут присутствовать на жестком диске. Как правило, восстановление реестра при серьезном сбое даже из старой архивной копии сэкономит гораздо больше времени, чем переустановка Windows и всех программ при отсутствии резервной копии реестра вообще.
Неосторожные действия при правке реестра так же могут вызвать проблемы в работе Windows. Разного рода «чистильщики» реестра сомнительного качества способны принять за «мусор» важные ключи реестра и удалить их, поэтому такими программами надо пользоваться осторожно, всегда предварительно создавая резервные копии реестра, а лучше не пользоваться ими вовсе. Перед правкой реестра и, особенно, если правка будет глобальной (много значений будет изменено за один раз), крайне желательно создать резервную копию реестра.
Реестр Windows имеет критическое значение для работы операционной системы.


Настройка аудита реестра.

Если аудит не был включен ранее в групповой политике, то его нужно включить перед настройкой аудита ключей реестра.
Для этого откройте локальную политику при помощи Пуск - Выполнить - gpedit.msc

Разверните слева дерево папок так, как показано на рисунке 1, т.е. Конфигурация компьютера - Конфигурация Windows - Параметры безопасности - Локальные политики - Политика аудита. В правом окне дважды щелкните по параметру Аудит доступа к объектам и в открывшемся окне поставьте галку у пункта Успех. После нажатия ОК в окне, показанном на рисунке 1, напротив параметра Аудит доступа к объектам, в графе Локальный параметр появится значение Успех. Это говорит о том, что в данный момент в политике включен аудит успехов доступа к объектам. Но политика еще не распространена и не действует. Чтобы распространить (применить) измененную политику безопасности откройте командную строку (Пуск - Выполнить - cmd) и выполните команду

secedit /refreshpolicy MACHINE_POLICY

В ответ будет выведено сообщение о том, что запущен процесс распространения групповой политики.
Закройте окно Групповая политика, показанное на рисунке 1 и откройте его вновь, переместившись до раздела с настройками аудита, так, как это было описано выше. Если политика успешно применена, то напротив параметра Аудит доступа к объектам в графе Действующий параметр будет написано то же, что и в графе Локальный параметр. Это говорит о том, что аудит включен и политика применена

Теперь настроим аудит конкретного ключа в реестре. К примеру, пусть это будет HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Run. Откроем редактор реестра regedt32 (WIndows 2000) или regedit (Windows XP). Пройдем по дереву реестра до ключа, аудит которого необходимо настроить и выделим его. В меню Безопасность редактора реестра выберем пункт Разрешения. В открывшемся окне нажмем кнопку Дополнительно и переключимся на вкладку Аудит.

Нажмите кнопку Добавить и выберите группу Все двойным кликом. В открывшемся окне отметьте галками только те пункты, которые соответствуют интересующим событиям. К примеру, я поставил аудит только на успешное задание значения. Нажмите ОК три раза до возврата в окно редактора реестра. Аудит настроен. Чтобы проверить его работу создадим текстовый файл со следующим содержанием:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Run]
"test"=""

Сохраните файл под именем test.reg, например. В диалоговом окне сохранения файла выберите Тип файла: Все файлы, иначе редактор присвоит файлу расширение txt. Этот файл предназначен для создания в реестре по указанному пути параметра test с пустым значением, что видно из содержимого файла. Запустите полученный файл. Если все сделано правильно, то будет выдан запрос на добавление данных в реестр

Ответьте Да, после чего будет выдано подтверждение о том, что информация успешно добавлена.
Теперь откройте консоль Управление компьютером. Для этого щелкните правой кнопкой мыши по значку Мой компьютер и выберите Управление. В открывшемся окне перейдите в журнал Безопасность

Обратите внимание на выделенную записи с кодом 560. Это и есть уведомление о том, что с ключем реестра произошло событие на которое настроен аудит.
Таким образом, можно настроить аудит на любые события и анализировать их при помощи журнала Безопасности системы.

Настройка прав на доступ к ключам реестра.

Чтобы обеспечить безопасность разделов реестра воспользуйтесь настройкой разрешений при помощи regedt32 (Windows 2000) или при помощи regedit (Windows XP).
Для примера рассмотрим ограничение доступа к ключу HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Run.
Будьте осторожны и помните о том, что разрешения наследуются, т.е. разрешения, заданные для раздела, будут распространены вниз, на подразделы и параметры.
Откройте редактор реестра и выделите ключ, разрешения на который планируется настроить. В нашем случае это HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Run.

Выберите Безопасность - Разрешения и нажмите кнопку Дополнительно.

Выделите в списке имя того пользователя, которому необходимо ограничить права и нажмите кнопку Показать/Изменить. Для примера я запретил себе в указанном выше разделе Задания значений.

После нажатия кнопки ОК в окно, добавился новый элемент.

Намите ОК два раза до возврата в окно редактора реестра. Новое разрешение задано.
Чтобы проверить, работает ли созданное ограничение, создадим reg-файл следующего содержания:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Run]
"test"=""

Скопируйте этот текст в Блокнот и сохраните под именем, например, test.reg. Чтобы Блокнот при сохранении файла не присвоил файлу расширение txt, выберите в диалоге сохранения файла Тип фалов: Все файлы и напишите имя файла с расширением, т.е. test.reg
Этот файл после его запуска добавит в указанный ключ реестра параметр test с пустым значением. Запустим его.

После положительного ответа на этот запрос будет выдано следующее сообщение:
"Не удалось импортировать "С:\МОИДОК~1\test.reg". Не все данные были записаны в реестр. Некоторые разделы были заняты системой или другими процессами".

Таким образом, настроенный запрет на добавление информации в определенный ключ реестра работает.

Aleksan вне форума   Ответить с цитированием

Старый 12.05.2010, 16:58
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Решение проблемы может находиться в похожих темах

Реестр
Особенности мелкоскопостроения, или макросъёмка для начинающих
Реестр Windows 7
Особенности копирования PDF-Word
Реестр

Старый 12.05.2010, 16:58   #2 (permalink)
Aleksan
IT - Specialist
 
Аватар для Aleksan
 
Регистрация: 08.12.2007
Сообщений: 6,815
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 6316
По умолчанию

Теперь необходимо пояснить смысл полномочий доступа к ключам реестра.

  • Query Value (Запрос значения) - пользователь может запрашивать значения параметров в реестре (для этого он должен указать полный путь к интересующему параметру).
  • Set Value (Задание значения) - Пользователь может создавать новые параметры в разделе или изменять их значения.
  • Create Subkey (Создание подраздела) - Пользователь может создавать новые подразделы в заданном разделе.
  • Enumerate Subkeys (Перечисление подразделов) - Пользователь может получить список всех подразделов определенного раздела.
  • Notify (Уведомление) - Пользователь может регистрировать функцию обратного вызова (callback), запускаемую при изменении выбранных параметров.
  • Create Link (Создание связи) - Пользователь может создавать связи с нужными разделами реестра.
  • Delete (Удаление) - Пользователь может удалять параметры или разделы.
  • Write DAC (Запись DAC) - Пользователь может перезаписать настройки доступа для заданного раздела реестра.
  • Write Owner (Смена владельца) - Пользователь может стать владельцем заданного раздела реестра.
  • Read Control (Чтение разрешений) - Пользователь может читать список разрешений доступа для заданного раздела реестра.
Автоматизация экспорта раздела реестра.

У редактора реестра есть ключ /e, который позволяет автоматически сохранять в reg-файле определенный раздел реестра. Это очень удобно, когда нужно сохранить настройки определенной программы, например, при ежедневном бэкапе. Экспорт может быть осуществлен как из командной строки так и из пакетного файла. Следующая команда сохраняет ключ реестра HKEY_CURRENT_USER\Software\Far в файл far.reg

regedit /e c:\far.reg HKEY_CURRENT_USER\Software\Far

В результате работы этой команды с корне диска С будет создан файл far.reg, который содержит все подразделы и параметры со значениями указанного раздела реестра. Для того, чтобы восстановить все настройки FAR будет достаточно запустить этот файл.
Для автоматизации сохранения ключей реестра можно написать пакетный файл, который будет запускаться Планировщиком в определенное время.

по мотивам windowsfaq.ru
Aleksan вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Метки
права доступа, разрешения в реестре, реестр


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 19:15.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.