2013-08-26 1 views
1

2 개의 하위 사이트가있는 기본 웹 사이트가 있습니다. 나는 다른 2 개의 하위 사이트를 볼 수 있도록 웹 사이트에서 인증 할 수있는 간단한 방법을 만들고 싶습니다. 추가 요구 사항, subsite1으로3 개의 웹 사이트간에 인증 공유

www.example.com/ 
www.example.com/subsite1 
www.example.com/subsite2 

및 subsite2가 다른 웹 사이트에 다시 사용할 수 있습니다 다음과 같이

웹 사이트는 setupa 있습니다.

ASP.NET의 기본 제공 인증 모듈을 사용할 수 있습니까? 또는 내 자신의 사용자 쿠키를 만들어야합니까?

+1

AFAIK와 같은 도메인에 있으면 자동으로 쿠키를 공유합니다. 쿠키를 통해 인증하는 경우 다른 작업을 수행하지 않아도됩니다. 당신이 실제로 인증을 공유하지 않기를 원한다면 실제로 문제가 생길 것입니다. – Renan

답변

5

예, 3 개의 사이트가 동일한 도메인에 있으므로 3 개의 응용 프로그램간에 폼 인증 쿠키를 공유 할 수 있습니다. 이는 3 응용 프로그램에 domain 속성을 설정하여 달성 할 수있다 :

<forms domain="www.example.com" ...> 

은 또한이 당신이 3 응용 프로그램간에 동일한 시스템 키를 공유해야 작동하도록. 자세한 내용은 MSDN following article을 참조하십시오.

0

재사용의 "추가 요구 사항"이 Single Sign-On 컨텍스트에서 얼마나 중요한지에 따라 다릅니다.

짧은 답변은 웹 사이트가 동일한 도메인에 있으면 브라우저가 각 사이트에 쿠키를 보내고 양식 인증이 자동으로 다시 사용된다는 것입니다. 웹 사이트가 다른 도메인에있는 경우 기존 SSO (Single Sign-On) 프로토콜 중 하나를 구현해야합니다.

내 개인 의견은 후자가 조만간 지불한다는 것입니다.

0

복잡하게 모듈을 만들 필요가 없습니다.

쿠키가 하위 도메인과 일치하지 않고 도메인에 따라 만들어지기 때문에 서브 사이트는 쿠키를 공유합니다.

그리고 각 하위 사이트마다 다르게 인증 쿠키를 관리하기 때문에 다른 인증을해야 할 필요는 없습니다.

Read this article

<form> 태그에서 <authentication> 섹션에서 web.config

을 (. 당신이 사용하고있는 프레임 워크 버전의 설정을 적용) 응용 프로그램에 같은 이름을 적용, 그 교장입니다 생각합니다.

관련 문제