Я работаю над обновлением проекта до 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