Лучший способ добавить ключи и значения HKCU для всех существующих пользователей и всех новых пользователей?


11

Мне нужно добавить ключи и значения HKCU для всех машин в определенном подразделении, для всех существующих профилей пользователей и в профиль по умолчанию. Какой лучший способ подойти к этому?

Я мог бы перечислять и перебирать все NTUSER.DAT, загружать улей, добавлять ключи и выгружать улей, но это кажется неуклюжим способом сделать это.

У кого-нибудь есть идея получше? Я хотел бы написать сценарий (желательно PowerShell) и, если возможно, выдвинуть изменения, но сценарии входа в групповую политику также будут работать.


Рекомендуем прочитать : stackoverflow.com/questions/1423687/…
Stein Åsmul

Как насчет предпочтений групповой политики?
Bill_Stewart

Ответы:


13

Мой предпочтительный метод заключается в использовании Active Setup. Что он делает, это проверяет, когда пользователь входит в систему на компьютере, выполнил ли он конкретный сценарий или команду (например, ту, которая у вас была бы), и если нет, запустите его. Таким образом, вы будете запускать определенный сценарий для пользователя только один раз на его рабочей станции. Я обнаружил, что это идеально подходит для записи в HKCU, поскольку вам не нужно загружать каждый улей, а изменяются только те учетные записи, в которые входят пользователи.

Не для саморекламы, но я написал в блоге об этом. Основное решение заключается в следующем:

Добавьте следующие записи реестра:

[HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components\UniqueID]
"Version"=""
"Stubpath"=""
@=""
  • Вы можете выбрать любой уникальный идентификатор, который вы хотите. GUID часто используются, но вы можете использовать все, что будет уникальным.
  • Version какой бы номер версии вы не хотели использовать.
  • Stubpathэто команда, которая будет выполнена. Все вызовы MSI, EXE и VBS кажутся нормальными.
  • Это @то, что должно отображаться при выполнении команды.

При таком решении язык сценариев не имеет значения. Вы можете сделать VBScript, Powershell, Batch file. Все, что позволяет писать в HKCU как зарегистрированный пользователь. Использование reg.exeнапрямую работает также хорошо.

Другим необязательным последним штрихом, который вы можете сделать, является загрузка и изменение пользовательского Hive по умолчанию. Это установит значение реестра для любых новых пользователей, которые впервые подключаются к этой конкретной системе.


Будь я проклят, это выглядит прекрасно. Я никогда не слышал об Active Setup раньше. Тестирую сейчас! Благодарю.
Даг Чейз

Хороший ответ от 20th Century Boy, но Active Setup - самое простое и надежное решение, на мой взгляд. Вы можете запустить все, что «работает».
Стейн Осмул

2
Как он обрабатывает запись в HKLM, особенно если пользователь не является администратором? Ваш блог может действительно использовать пример - как и этот пост.
Ян Бойд

7

Пользовательские ключи reg можно добавить, создав пользовательский файл adm и импортировав его в качестве шаблона в раздел «Административные шаблоны» объекта групповой политики. Затем свяжите этот объект групповой политики с вашей OU. В MS есть документы о том, как это сделать, или вы можете посмотреть на файлы adm, которые уже существуют на сервере (я думаю, что где-то под Sysvol).

Этот процесс называется «нанесение татуировки на реестр», и это означает, что вы находитесь вне контроля удаления групповой политики, т.е. записи reg останутся, даже если политика будет удалена. Вам нужно создать «перевернутый» ключ reg и развернуть его (или просто удалить).


Это тоже хорошее решение, и я уверен, что оба эти ответа сработают.
Даг Чейз
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.