2016-08-19 2 views
0

개발 환경이없는 기존 프로젝트를 상속했습니다. 나는 UAT 코드와 생산 데이터베이스의 백업을 가지고 있습니다. 내가 Visual Studio를 통해 사이트를 로컬로 실행할 수 있지만 AWS (단일 서버,로드 밸런서 없음)에서 새로운 독립 실행 형 DEV 서버를 설정하려고 할 때 인증 문제가 발생했습니다. doco는 Prod 서버가로드 밸런서가있는 이중 서버 설정임을 나타냅니다.보안 토큰 발급자의 구성이 누락되었습니다.

일부 검색이 작동하지 않지만 프런트 엔드 사이트 페이지가 표시됩니다. 백엔드 페이지에 로그인 할 때 Chrome은 "xxx 페이지가 작동하지 않습니다 .xxx가 사용자를 너무 많이 리디렉션했습니다."라고 반환합니다. 개발자 도구를 사용하면 페이지가 SWT? realm = ... 및 sitefinity 사이에서 앞뒤로 리디렉션되는 것을 볼 수 있습니다 wrap_defalted = true & wrap_access_token ... 두 번째 리디렉션 응답 헤더에 "X-Authentication-Error : Missing configuration for 보안 토큰 '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 일 평가판 라이센스를 사용 중이므로이 문제에 기여하는지 확실하지 않습니다. 공식 라이센스가 클라이언트에 의해 양도 중입니다. 공식 라이센스와 관련된 도메인 이름은 현재 새 서버가 실행중인 도메인과 다를 수 있습니다.

또한 Sitefinity 버전 9 설치에서 버전 8 코드를 실행 중입니다. 코드를 업그레이드하기 전에 작동 시키려고했습니다. 내 로컬 버전을 업그레이드 할 때 불일치를 나타 내기위한 어셈블리로드가 있다고 생각합니다.

답변

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를 영역으로 사용하여 새 도메인 만 사용하도록 변경 한 경우에도 작동하지 않는 것 같습니다. 내 생각에 인증 localhost를 구체적으로 시도해야합니다.