В подобных сценариях вы обычно используете промежуточный STS (именуемый «RP-STS» или «Поставщик федерации», который будет обрабатывать все доверительные отношения для вас. То есть: ваше приложение доверяет RP-STS, затем RP-STS будет доверять Вейланд-Ютани, Тиреллу и т. д.
Добавление RP-STS несколько упрощает ситуацию, особенно если каждый из идентификаторов STS отправляет вам утверждения, которые отличаются от того, что вам требуется в вашем приложении. Например: Тайрелл может отправить вам «имя», «фамилия» и «электронная почта». Weyland может отправить «Имя пользователя», «электронная почта». RP-STS нормализует набор требований в соответствии с потребностями вашего приложения.
Способ подсказки RP-STS, куда перенаправить пользователя, - параметр whr (что означает «Домашний мир»). Ваше приложение будет просматривать URL-адрес запроса и затем добавлять параметр whr перед перенаправлением на RP-STS.
Все вышеперечисленное подробно описано в главе " Федерация с несколькими партнерами " этой книги .
Если вы не хотите создавать / приобретать и развертывать свой собственный RP-STS (в зависимости от модели развертывания вашего приложения, вы можете использовать ADFS v2.0, например), вы можете использовать Access Control Service из Windows Azure. ,
В этой другой главе объясняется, как это будет работать.