HttpContext.Current.User всегда нулевой - PullRequest
3 голосов
/ 15 января 2010

У меня есть служба WCF, в которой есть метод для возврата имени пользователя Windows клиента Silverlight, который использует службу. Служба WCF использует basicHttpBinding с установленным режимом TransportCredentialOnly и TransportClientCredentialType, установленным в Windows. В IIS проверка подлинности Windows включена и отключена проверка подлинности.

Несмотря на (по-видимому) правильную настройку службы, когда я вызываю службу и прошу ее вернуть имя пользователя, в ней указаны ошибки. При ближайшем рассмотрении видно, что HttpContext.Current.User всегда имеет значение null (поэтому выбрасывается исключение nullreference).

У кого-нибудь есть другие идеи, почему это не работает?

Ответы [ 2 ]

4 голосов
/ 15 января 2010

Попробуйте добавить -

<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />

в ваш конфигурационный файл

1 голос
/ 15 января 2010

В WCF существует объект OperationContext , из которого можно получить учетные данные безопасности, переданные вызывающей стороной / клиентом, с помощью свойства ServiceSecurityContext .

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