Запретить пользователям без прав администратора изменять часовой пояс в Windows

1166
monica

Вернувшись в Windows XP, обычные пользователи не могли изменить часовой пояс системы. В более новых версиях часовой пояс может быть изменен даже пользователями без прав администратора. Я могу понять причину, по которой они добавили эту возможность, но она может действительно испортить одно из наших приложений для регистрации времени. Поэтому мы решили предоставить нашим пользователям возможность отключить это.

В «Локальной политике безопасности» ключ «Локальные политики / Назначение прав пользователя / Изменение часового пояса» содержит значение «ЛОКАЛЬНАЯ СЛУЖБА, Администраторы, Пользователи».

Короче говоря, нам нужно, чтобы наше приложение (написанное на C #) могло удалить или добавить часть «Пользователи» из вышеуказанной политики. Наше приложение включает в себя системный сервис, поэтому оно имеет повышенные права.

Мы могли бы использовать командную строку windows или бесплатно распространять сторонние инструменты.

(PS: сервер не задействован, нет DC, AD и т. Д. Только автономные ПК.)

0
Если они являются Администратором на локальном компьютере, они могут отменить любые внесенные вами изменения. Ramhound 8 лет назад 0
@ Ramhound Мне кажется, что пользователи не имеют доступа на уровне обслуживания, только эта часть приложения имеет. Ben N 8 лет назад 0
Администраторы @Ramhound должны иметь возможность менять часовой пояс. Мы должны помешать неадминам сделать это. monica 8 лет назад 0
В зависимости от того, на каком языке написано ваше приложение, может быть проще / лучше использовать Windows API напрямую; см. [LsaAddAccountRights] (https://msdn.microsoft.com/en-us/library/windows/desktop/ms721786 (v = vs.85) .aspx) и [LsaRemoveAccountRights] (https://msdn.microsoft.com). /en-us/library/windows/desktop/ms721809(v=vs.85).aspx) Ben N 8 лет назад 0

2 ответа на вопрос

0
Ben N

Это можно сделать с помощью командной строки (и, следовательно, простого запуска процесса из кода) с помощью NTRights, который является частью пакета средств Windows Server 2003 Resource Kit Tools . ntrights.exeвызывается с -uпоследующим именем группы или пользователя и / +rили -rдля добавления или удаления (соответственно) следующей привилегии.

Таким образом, ntrights -u Users +r SeTimeZonePrivilegeпредоставляет право на изменение часового пояса и ntrights -u Users -r SeTimeZonePrivilege(обратите внимание -r) отменяет его.

Дальнейшее чтение: Больше о привилегиях, список общих привилегий

Спасибо @Ben, но насколько я понял лицензию RKT, я не могу распространять права. monica 8 лет назад 0
0
monica

После долгих поисков за последние 3 дня я нашел бесплатный инструмент для распространения, который может легко управлять политиками безопасности. Это называется «Грант». Сайт создателя (Андреас Ханссон) и бизнес больше не существуют, но я нашел копию на машине обратного хода, включая файл для загрузки: https://web.archive.org/web/20150113021825/http://franzo.co. пг / Ханссон / grant.htm

Примеры использования:

Грант Добавить SeSystemtimePrivilege Пользователи

grant add SeServiceLogonRight myDomain \ ServiceAccount