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