Как получить доступ к реестру на стороне сервера из COM-объекта, созданного php? - PullRequest
0 голосов
/ 06 мая 2009

На сервере я хотел бы позвонить в dll с php. Использование COM-объекта. Это не было проблемой, пока я не попытался использовать некоторые функции WPF.

Я получаю следующую ошибку:

Неустранимая ошибка PHP: необработанное исключение 'com_exception' с сообщением 'Source: mscorlib Описание: Запрошено доступ к реестру запрещен. '

Через утилиту ProcMon я обнаружил, что только 1 отказано в доступе поднимается на

HKU \ S-1-5-20 \ Software \ Microsoft \ Wisp \ Pen \ SysEventParameters

Эта клавиша используется для некоторых «Стирание с помощью пера» настроек. Я ничего не делаю с этим классом, кажется, он вызывается при инициализации или что-то.

этот процесс вызывается php-cgi.exe от пользователя NT AUTHORITY \ NETWORK SERVICE. В regedit.exe я увидел, что у этого пользователя есть доступ к ключу.

Должно ли быть возможно использовать WPF на сервере, верно? Я думаю, что мне нужно где-то понизить безопасность.

Кто-нибудь может указать мне правильное направление?

1 Ответ

0 голосов
/ 07 мая 2009

Оказалось, что это единственная настройка в IIS7. Я изменил учетные данные анонимной аутентификации с NT AUTHORITY \ NETWORK SERVICE на удостоверение пула приложений, и проблема была исправлена.

...