2016-08-19 4 views
0

Я унаследовал существующий проект без его среды разработки. У меня есть код UAT и резервная копия базы данных Production. Я могу запустить сайт локально через Visual Studio, но столкнулся с проблемой аутентификации, пытаясь настроить новый автономный сервер DEV на AWS (один сервер, без балансировки нагрузки). Doco указывает, что Prod-сервер - это двухсерверная настройка с балансировщиком нагрузки.Отсутствует конфигурация для эмитента ошибок токенов безопасности

Страницы на интерфейсе сайта отображаются, хотя некоторые поисковые запросы не работают. При попытке войти в бэкэнд-страницы Chrome возвращает «Страница xxx не работает. Xxx перенаправляет вас слишком много раз». Используя инструменты разработчика, я вижу, что страница перенаправляет туда и обратно между SWT? Realm = ... и sitefinity? Wrap_defalted = true & wrap_access_token ... Во втором заголовке ответа на перенаправление есть «X-Authentication-Error: Отсутствует конфигурация для эмитент безопасности лексемы "https://xxx/Sitefinity/Authenticate/SWT"

Я пробовал разные значения в web.config строки:

<federatedAuthentication> 
     <wsFederation passiveRedirectEnabled="true" issuer="http://localhost" realm="http://localhost" requireHttps="true"/> 
     <cookieHandler requireSsl="false"/> 
</federatedAuthentication> 

, но что на самом деле сделал вещи хуже, так что я вернулся.

Я проверил все настройки, упомянутые в http://docs.sitefinity.com/administration-switch-to-claims-based-authentication, и они, похоже, установлены правильно. Я не знаю, что еще я могу проверить, чтобы это работало.

Я нашел http://docs.sitefinity.com/administration-configure-security, но, похоже, эти параметры не установлены (у меня нет доступа к Prod-серверу, поэтому не удается подтвердить, действительно ли он настроен с балансировкой нагрузки). В настоящее время я использую 30-дневную пробную лицензию, поэтому не уверен, что это способствует этой проблеме. Официальная лицензия находится в процессе передачи клиентом. Имя домена, связанное с официальной лицензией, будет отличаться от домена, на котором в настоящее время работает мой новый сервер.

Я также запускаю версию 8 кода на версии 9 для установки Sitefinity. Я хотел, чтобы он работал, прежде чем я попытался обновить код. Я думаю, что была также сборка, чтобы проявить несоответствие, когда я попробовал обновить свою локальную версию.

ответ

1

Нашли решение: Не связывайтесь с файлом SecurityConfig.config.

<securityTokenIssuers> 
    <add key="B886AA7BFB5515BA63F577A44BBEB5C7AE674035514D128BC397346B11F4C97A" encoding="Hexadecimal" membershipProvider="Default" realm="http://localhost" /> 
</securityTokenIssuers> 
<relyingParties> 
    <add key="B886AA7BFB5515BA63F577A44BBEB5C7AE674035514D128BC397346B11F4C97A" encoding="Hexadecimal" realm="http://localhost" /> 
</relyingParties> 

Несмотря на то, что он работает на сервере, указанные выше строки должны указывать на localhost. Похоже, что их нужно редактировать только в том случае, если у вас установлена ​​многосерверная установка с полностью отдельной STS.

Первоначально я изменил его, чтобы соответствовать новому доменному имени, но после некоторых экспериментов вокруг добавления вариантов localhost и HTTP кажется, что он работает лучше всего с помощью только localhost.

Даже если я изменил запись web.config выше, чтобы использовать новый домен как эмитент вместо localhost, а SecureConfig.config, чтобы указать только новый домен как сферы, он, похоже, не работает. Я предполагаю, что аутентификация должна пытаться ударить локально.

Смежные вопросы