После просмотра видеороликов PluralSite по Identity and Access Control и настройки всего, что мне нужно (у меня есть работающий локальный экземпляр Thinktecture Identity Server на моей машине, а также расширение Identity and Access vs2012), я не могу получить два веб-приложения в одном решении для аутентификации на Identity Server.
В настоящее время они оба требуют, чтобы я вошел в сервер идентификаторов, а это не то, чего я хочу, я хочу иметь возможность один раз войти на сервер идентификаторов и пройти аутентификацию для обоих сайтов.
Вот части web.config, которые, я ДУМАЮ, определяют, как это должно происходить:
Какова именно роль области? Должен ли это быть настоящий URL-адрес или его можно рассматривать как пространство имен? Я предполагаю, что при попытке использовать один и тот же токен безопасности, выданный Id Server, на нескольких сайтах должна вступить в игру область визуализации.
<system.identityModel.services>
<federationConfiguration>
<cookieHandler requireSsl="false" />
<wsFederation passiveRedirectEnabled="true" issuer="https://MyIdServer.com/idsvr/issue/wsfed" realm="http://MyLocalServerRunningIISExpress:55495/" reply="http://MyLocalServerRunningIISExpress:55495/" requireHttps="false" />
</federationConfiguration>
</system.identityModel.services>
Как работает AudienceUris? Я предполагаю, что если я хочу, чтобы один токен безопасности использовался на нескольких сайтах, мне нужно, чтобы URL-адрес каждого сайта был представлен в разделе AudienceUris?
<system.identityModel>
<identityConfiguration>
<claimsAuthenticationManager type="SSO.Security.ClaimsAuthenticationManager, SSO.Security" />
<audienceUris>
<add value="http://MyLocalServerRunningIISExpress:55495/" />
<add value="http://MyLocalServerRunningIISExpress:53133/" />
</audienceUris>
</identityConfiguration>
</system.identityModel>
Другой файл web.config для второго сайта аналогичен приведенным выше разделам, но с измененными номерами портов в URL-адресах.
Опять же, у меня ДЕЙСТВИТЕЛЬНО есть Id Srv, возвращающий мне токен, который аутентифицирует меня для ОДНОГО сайта, но я не могу заставить его работать для двух.
Я предполагаю, что это проблема конфигурации или, может быть, тот факт, что я запускаю два экземпляра IIS Express с двумя номерами портов вместо того, чтобы использовать реальный сервер IIS и вместо этого использовать URL-адрес?