2014-06-24 4 views
0

아래 양식 로그인으로 보호되는 다른 웹 사이트의 하위 디렉토리에서 호스팅되는 ASP.NET MVC 웹 사이트가 있습니다. 일부 ASP.Net에서 상위 웹 사이트의 ASP.Net 폼 인증을 건너 뛰는 방법 하위 웹 사이트의 MVC 액션

<domain>/parent   --asp.net 2.0, with login form (standard form auth) 
<domain>/parent/mysite --asp.net mvc 4.0 
server: IIS 6 

parent 웹 사이트의 로그인 폼을 통과해야 mysite 웹 사이트 사용자를 입력합니다. 우리가 mysite에 twilio 응용 프로그램을 개발하고 을 쓸 때까지는 twiml의 공개 액세스가 <domain>/parent/mysite/twilio/twiml 일 때까지는 괜찮습니다. /twilio은 영역이며 /twiml은 컨트롤러입니다.

/mysite web.config에서 다음 구성을 시도했지만 작동하지 않습니다.

<location path="~/parent/mysite/twilio"> 
    <system.web> 
    <authorization> 
     <allow users="*"/> 
    </authorization> 
    </system.web> 
</location> 

편집

내가 부모 웹 사이트의 코드/구성을 변경 제어/액세스 할 수 없습니다.

어떻게하면이 아이디어를 얻을 수 있습니까?

답변

0

상위 응용 프로그램에는 인증 양식이 있습니다. 따라서 클라이언트 브라우저에 대해 암호화 된 쿠키를 생성합니다. 하위 응용 프로그램에서이 쿠키를 해독 할 수있는 경우 하위 응용 프로그램은 액세스가 허용되어야하는지 확인할 수 있습니다.

위의 내용은 주로 표준 Microsoft 양식 인증을 수행하고 있으며 표준 Microsoft 멤버 자격 공급자를 사용하는 경우에도 많은 가정을합니다.

나는 당신이 당신의 2.0 응용 프로그램을 업그레이드 할 필요가 있다고 생각 당신은 machineKey 두 응용 프로그램에서 동일하게 설정해야합니다 쿠키, This blog explains it.

의 암호를 해독 할 수 있도록하려면,하지만 난 모르겠어요.

+0

답변 해 주셔서 감사합니다. 네, 표준 마이크로 소프트 양식 인증을 사용합니다. 나는 당신의 제공 한 연결을 따르고 그러나 그것이 나의 것 맞는지 아직도 이해하지 않는다. 어디서 코드를 확인하고 액세스 권한을 부여해야합니까? 왜냐하면 나는 로그인 폼이 자식 코드를 건드리지 않고 보여줄 것이라고 생각하기 때문이다. 아니? – bonjorno

+0

asp.net 2.0에 대해서는 잘 모릅니다. 그러나 4 MVC 4.0 하위 응용 프로그램이있는 경우, 각 하위 응용 프로그램 (web.config) DefaultProvider에 동일한 멤버쉽 데이터베이스를 사용하고 각 machineKey를 설정하기 만했습니다. 동일하게 코드를 작성할 필요가 없었습니다. 나는 당신이 MS 멤버쉽 공급자를 사용하는 것과 똑같은 것을 알게 될 것이라고 생각합니다. 하지만 4.0 esp를 사용하려면 2.0 코드를 업데이트해야한다고 생각합니다. 회원 가입 –

관련 문제