Могу ли я иметь вызов WCF, который попадает в БД, используя кредиты вызывающего абонента? - PullRequest
1 голос
/ 13 октября 2010

Я много читал об олицетворении, и я попробовал тонну тегов в моем конфигурационном файле. Я попытался [OperationBehavior(Impersonation = ImpersonationOption.Required)] на моем методе, который попадает в базу данных.

Ничего из этого не работает. Я получаю большое количество сообщений об ошибках в зависимости от того, как настроен мой конфиг.

Может кто-нибудь выложить мне, что C # и конфигурация (то есть привязки, поведение, настройки конечных точек) необходимы, чтобы заставить работать следующий сценарий:

  • Я вызываю метод WCF через WCFTestClient.
  • Метод WCF размещается в IIS (работает под пользователем IIS, который не является допустимым пользователем в БД).
  • Этот метод определяет, кто является вызывающим абонентом, и передает эти учетные данные в вызов к базе данных
  • Вызов базы данных находится в другом проекте (библиотека классов) и использует Linq-to-sql
  • База данных выполняет действие, как если бы это сделал вызывающий объект службы WCF.

Если кто-нибудь прояснил эту тайну, пожалуйста, поделитесь подробностями со мной.

Спасибо!

(ПРИМЕЧАНИЕ. Я занимаюсь разработкой в ​​Visual Studio 2010 Ultimate и хостинг в IIS 7)

1 Ответ

1 голос
/ 13 октября 2010

Существует хорошее пошаговое руководство по настройке олицетворения в WCF здесь .Возможно, вам не хватает настройки servicebehavior?

...