Запрошенный доступ к реестру не разрешен на удаленной машине - PullRequest
0 голосов
/ 16 декабря 2011

Мы разработали несколько рассеянную систему для автоматической установки и обновления компонентов в серверных средах. Он успешно работал в нашей среде разработки, но я столкнулся с новой проблемой, с которой я не сталкивался ранее при попытке развернуть ее в реальной среде.

Рассматриваемая среда состоит из десяти серверов, по пять на каждом из двух географических сайтов и доменов. На каждом сервере работает служба Windows на основе WCF, которая позволяет ему общаться с каждым из других серверов и, таким образом, отслеживать, что и где установлено. Чтобы упростить этот процесс, мы используем переменные среды уровня компьютера, и их изменение, очевидно, означает изменения в реестре.

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

Единственная подсказка, которую я получил, заключается в том, что парень, который делал установку на блоках разработки, написал очень набор патчей документации по этому процессу. Это включает в себя инструкцию, чтобы изменить значение HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ System \ LocalAccountTokenFilterPolicy в реестре и установить его равным 1. Я пропустил это во время установки, поскольку это выглядело как довольно сомнительная угроза безопасности. Читая документацию по этому ключу, она выглядит уместно, но мои первоначальные попытки установить вещи на другие ящики без этой настройки работали нормально. К сожалению, вчера автор ушел в длительный отпуск в праздничные дни, и он не оставил объяснений, почему этот ключ был нужен, поэтому мы немного в неведении.

Может ли кто-нибудь помочь нам достичь света?

Cheers, Matt

Ответы [ 2 ]

0 голосов
/ 16 декабря 2011

По сути, он отключает часть контроля учетных записей удаленных пользователей.Не устанавливая значение, Удаленный контроль учетных записей удаляет административные привилегии с токенов учетных записей, которые получают удаленный доступ к машине.Да, это имеет последствия для безопасности.См. Описание контроля учетных записей и удаленных ограничений в Windows Vista для объяснения.

0 голосов
/ 16 декабря 2011

Я видел эту ошибку, когда код пытается записать в журнал событий, используя что-то вроде EventLog.WriteEntry (), и указан источник, который не является зарегистрированным источником события.Когда указан источник, который ранее не был зарегистрирован, он попытается зарегистрировать источник, что предполагает запись в реестр.

Я бы посоветовал взглянуть на SysInternals Process Monitor:

http://technet.microsoft.com/en-us/sysinternals/bb896645

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

...