Службы данных WCF с интегрированной аутентификацией - PullRequest
0 голосов
/ 13 сентября 2010

У меня есть веб-проект с анонимным доступом и встроенной аутентификацией Windows. Я построил Службу данных WCF и, поскольку она допускает только одну аутентификацию, я включил Интегрированную аутентификацию в службе. Я могу просматривать сервис в браузере. Однако, когда я пытаюсь запросить сервис для любого объекта, он выдает мне запрещенную ошибку. Я также пытался включить анонимный доступ к сервису, но он не работает.

Нужно ли предоставить ему какой-то другой доступ или невозможно включить одну аутентификацию в самой службе, сохраняя виртуальный каталог проекта как анонимный и интегрированный.

Обновление: у меня нет никаких операций в моей службе данных. Для сущностей я уже установил разрешение «Все» для всех сущностей.

1 Ответ

1 голос
/ 27 мая 2011

Только один метод аутентификации разрешен в службе данных WCF.

Если вы решите пойти по пути Интегрированной безопасности, вам необходимо установить учетные данные после создания DataServiceContext.

Примерно так будет работать для использования идентификатора Windows текущего пользователя.

employeeEntities = new EmployeeDataService.EmployeeEntities(new Uri("http://.../employeedata.svc"));
employeeEntities.Credentials = CredentialCache.DefaultCredentials;
...