Привилегии администратора эмулятора вычислений Azure - регистрация URL WCF - PullRequest
1 голос
/ 14 февраля 2011

Я работаю над обновлением проекта до Windows Azure 1.3, и у меня возникла проблема с размещением служб WCF во внутренней веб-роли. Я получаю следующее исключение при попытке доступа к сервисам:

HTTP could not register URL http://127.0.0.1:5111/service.svc/. Your process does not have access rights to this namespace

У меня была похожая проблема при работе с Azure 1.0, и я решил ее с помощью следующего кода:

new BasicHttpBinding() { HostNameComparisonMode = HostNameComparisonMode.Exact }

С этой новой проблемой, кажется, есть несколько общих решений; используя приведенный выше код, запустите инструмент httpcfg для явного изменения резервирования пространства имен и запустите от имени администратора.

Насколько мне известно, инструмент httpcfg не будет работать для внутренней веб-поля Azure, поскольку порт назначается динамически. Запуск Visual Studio от имени администратора и отладка облачного проекта также не решают проблему (Visual Studio запускает эмулятор).

Похоже, что эмулятор вычислений Azure не наследует разрешения от процесса Visual Studio. Кто-нибудь сталкивался с подобной проблемой, есть идеи по исправлению, обходные пути?

Karl

1 Ответ

0 голосов
/ 16 февраля 2011

Хорошо, мои подозрения подтвердились. Когда запускается эмулятор вычислений Azure, он добавляет экземпляры веб-роли в IIS, но удостоверение пула приложений не имеет разрешения для регистрации пространств имен.

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

http://www.wadewegner.com/2011/01/programmatically-changing-the-apppool-identity-in-a-windows-azure-web-role/

Это далеко не идеальное решение, но оно работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...