(IIS / Win2000Pro) Предоставление прав на чтение реестра пользователю IIS? - PullRequest
1 голос
/ 27 августа 2008

Хорошо, я запускаю небольшой тестовый веб-сервер в своей частной сети. У меня есть машина под управлением Windows 2000 Pro, и я пытаюсь запустить приложение ASP.NET через IIS.

Я написал так, чтобы веб-страница использовала реестр для хранения определенных настроек (строки подключения, потенциально нестабильные местоположения других веб-служб, пути в локальной файловой системе, где хранится определенная информация и т. Д.). Конечно, это работало хорошо при тестировании с VStudio.NET 2005, потому что пользователь, запускающий приложение, имеет повышенные привилегии. Однако, запустив его на IIS, я получаю сообщение «Доступ к разделу реестра« HKEY_LOCAL_MACHINE \ Software »запрещен». Это означает, что у пользователя IIS нет доступа на чтение к этой части реестра (я только читаю через веб-сайт »). сам никогда не пишет).

Я сказал: «Хорошо, достаточно просто, я просто предоставлю этому пользователю права на эту часть реестра через regedit». Проблема в том, что я нигде не вижу возможности изменить настройки безопасности в regedit ... вообще. Это заставило меня задуматься ... Не думаю, что мне когда-либо приходилось менять настройки безопасности для кустов / ключей реестра раньше, и я не думаю, что знаю, как это сделать.

Через полчаса поиска в Интернете я не нашел полезной информации на эту тему. Что мне интересно ... как вы меняете права безопасности на части реестра? Я в замешательстве, и, похоже, моя способность найти ответ в Google совершенно меня не подводит ... и, поскольку я только что зарегистрировался здесь, я подумал, что увижу, знает ли кто-нибудь здесь. =)

Ответы [ 6 ]

1 голос
/ 27 августа 2008

Если у вас есть RegEdit в Windows 2000, вы можете попробовать следующее:

  • Скопируйте Windows XP RegEdt32.exe на компьютер с Windows 2000
  • Используя Windows XP Machine, удаленно подключитесь к реестру Windows 2000: Файл> Подключить сетевой реестр
0 голосов
/ 28 июля 2009

Просто используйте RegEdt32.exe вместо Regedit.exe. Перейдите к нужному ключу или папке, затем откройте меню безопасности и нажмите «Права доступа».

0 голосов
/ 27 августа 2008

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

(РЕДАКТИРОВАТЬ: я был не прав, это сработало ... потребовалось несколько минут, чтобы ответить на мой запрос на изменение разрешений удаленно)

Идея удаленного подключения сделала это! Ты в порядке! Большое спасибо за Вашу помощь! Я никогда не понимал, что вы можете удаленно подключиться к RegEdit ... вы узнаете что-то новое каждый день, говорят они! =) Еще раз спасибо за вашу помощь! =)

В другой заметке о копировании версии RegEdit для XP в Windows 2000 ... это безопасно? Я полагал, что они будут закодированы таким образом, чтобы быть несовместимым ... но я мог бы предполагать слишком много. =)

0 голосов
/ 27 августа 2008

Я так и сделал, предполагая, что настройки безопасности будут доступны. Я не увидел никакой опции «Безопасность», когда щелкнул правой кнопкой мыши на Ключе. = (Я проверил трижды, просто чтобы убедиться ... и я только что попробовал это на моей машине с XP, и у нее действительно есть раздел "Разрешения" ... но на машине с Windows 2000 нет. (Как это для wierd ?)

В своих поисках я нашла:

http://www.experts -exchange.com / Программирование / Языки / .NET / ASP.NET / Q_21563044.html

Который отмечает, что RegEdit для Windows 2000 не имеет настроек безопасности / разрешений ... но он не предлагает решения проблемы. (Кто бы ни задавал вопрос, использовал Windows XP, поэтому он был в порядке ... но в моем случае это 2000)

Есть ли способ сделать это специально в 2000 году?

РЕДАКТИРОВАТЬ: Аххххх ... если хуже станет хуже, я думаю, что я могу выполнить олицетворение, как указано ниже ... хотя, если я не могу установить параметры безопасности для реестра в 2000 году, мне остается сделать Пользователь имеет административный доступ (я полагаю?), чтобы фактически получить те права, что, к сожалению, отрицательно сказывается на цели. = (

0 голосов
/ 27 августа 2008

RegEdt32.exe позволит вам установить разрешения для ключей реестра.

Просто щелкните правой кнопкой мыши на ключе (папке) и выберите «Разрешения», после чего вы сможете редактировать разрешения так же, как папка файловой системы.

0 голосов
/ 27 августа 2008

Вы можете установить разрешения на уровне папок, для которых вы хотите предоставить пользователю разрешения на чтение / запись.

В вашем случае щелкните правой кнопкой мыши папку «Программное обеспечение» и выберите «Разрешения».

Остальное вы, вероятно, узнаете оттуда.

РЕДАКТИРОВАТЬ: Если вы все еще сталкиваетесь с проблемами, вы можете изменить файл web.config и использовать олицетворение, чтобы ваше веб-приложение запускалось под определенной учетной записью пользователя. Тогда вы можете установить более жесткое правление на элементы управления.

...