Выдавать себя за пользователя в WCF от нескольких вызывающих

Я использую службы WCF, чтобы для каждого запроса указывалось имя пользователя и пароль. Мне нужно использовать одну и ту же службу от многих клиентов, но мне нужно олицетворять вызов, чтобы получить доступ к соответствующим ресурсам для каждого клиента. Когда я вызываю службу напрямую из клиента, проблем нет, потому что я использую для каждого клиента пару UserName / Password, определенную в их web.config. Проблема возникла, когда мне нужно вызвать вторую веб-службу из вызова первой, используя тот же идентификатор. Эта вторая веб-служба требует UserName / Password, но я знаю только, кто звонит (UserName), но не пароль.

Как я могу олицетворять этот второй вызов, не зная пароля для соответствующего имени пользователя?

ИЗМЕНИТЬ: приложение (веб-приложение и службы) работает в среде общего хостинга, где я не могу использовать проверку подлинности Windows для настройки Kerberos для делегирования. Я определил UserNameValidator для обработки при каждом вызове пары UserName / Password в настраиваемой базе данных SQLServer. Более того, предполагаемые клиенты этого приложения будут использовать его из Интернета, не требуя учетной записи Windows, потому что мне нужна более гибкая схема аутентификации на основе SQL.


person Lester    schedule 26.11.2010    source источник
comment
Отметьте этот ответ: заголовок stackoverflow.com/questions/2921978/   -  person Fredrik Mörk    schedule 26.11.2010


Ответы (2)


Вам нужно взглянуть на использование Kerberos для обработки передачи аутентификации другим службам из вашей первой службы WCF.

person Robert MacLean    schedule 26.11.2010
comment
Проблема в том, что я использую общий хостинг и использую не проверку подлинности Windows, а настраиваемый метод проверки подлинности имени пользователя и пароля с использованием реализации UserNameValidator для проверки этих учетных данных при каждом вызове. - person Lester; 26.11.2010

Вы ознакомились с вариантами декларативной безопасности? Связанная статья Ювала Лоуи также включает сценарий интернет-приложения.

person Ta01    schedule 26.11.2010