2009-08-05 1 views
1

문제가 발생하기 전에 설정을 약간 설명해주십시오. 양식 인증을 사용하는 두 개의 웹 서버 (www.mydomain.com 및 www2.mydomain.com)가 있습니다. 각 웹 서버에는 인증 용 메인 애플리케이션과 수많은 하위 애플리케이션이 있습니다. 그것은 다음과 같은 종류의 모양 : 당신이 볼 수 있듯이.Net 폼 인증 SSO의 쿠키 만료 문제

www.mydomain.com

|__MainApp (.Net 2.0) 
    |__SubApp1 (.Net 1.1) 
    |__SubApp2 (.Net 2.0) 
    |__SubApp3 (.Net 2.0) 

www2.mydomain.com

|__MainApp (.Net 2.0) 
    |__SubApp1 (.Net 1.1) 
    |__SubApp2 (.Net 2.0) 
    |__SubApp3 (.Net 2.0) 

, 내가 믹스를 실행 해요 .Net 1.1 및 2.0 응용 프로그램을 동일한 서버에 설치해야합니다. 이제는이 설치와 함께 작동하는 SSO (Single Sign-On) 솔루션을 사용하여 부분적으로 성공했습니다. 태그의 도메인 속성이 .Net 1.1과 호환되지 않기 때문에 (응용 프로그램에서 예외가 발생 함) 양식 쿠키 생성의 도메인을 프로그래밍 방식으로 설정하기로 결정했습니다. 이 잘 작동하고 다시 로그인하지 않고도 두 서버간에 이동할 수 있습니다. 서버가 쿠키 재발행/갱신을 시도하고 slidingExpiration을 사용하여 유효 기간을 갱신 할 때 문제가 발생합니다. 내가 생성 한 쿠키는 "mydomain.com"을 도메인으로 사용하여 생성되지만 서버가 새로운 만료와 함께 재발급하려고하면 쿠키를 찾을 수 없으며 "www.mydomain.com"이라는 새 쿠키가 생성됩니다 도메인.

서버가 원래 쿠키를 사용자 정의 도메인으로 적절하게 재발행하도록 할 여지가 있습니까?

답변

0

양식 인증을 사용하는 거의 동일한 설정 (두 개의 웹 서버, 1.1, 2.0 및 3.5 응용 프로그램 혼합)과 SSO가 있습니다. 그리고 우리는 아무런 문제없이 만료가 만료되도록 노력하고 있습니다.

한 가지 차이점은 두 개의 웹 서버가 웹 팜으로 설정되어 있다는 것입니다 (올바르게 기억하면 서버 2k3의 MS 클러스터링 사용). 즉, 두 시스템이 동일한 도메인에 지정됩니다. 두 서버를 웹 팜으로 전환 할 수 있습니까?

0

우리가 그 길을 가야한다면 장기적인 해결책 일 것입니다. 단기간에, 나는 프레임 워크가 기존의 쿠키를 찾아 재발행 할 수없는 이유를 아는 사람이 있는지보기를 바랐다.

0

내 솔루션은 .Net 2.0 프레임 워크 (C : \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ CONFIG \ Web.config)의 글로벌 Web.config에 폼 인증 도메인 특성을 추가하는 것이 었습니다. 내 .Net 1.1 응용 프로그램의 문제는 해결되지 않지만 대부분의 응용 프로그램은 2.0에 있습니다. 아마도 닷넷 1.1 앱의 슬라이딩 만료를 처리하기 위해 HTTPModule을 사용할 것이다.