2013-05-07 3 views
0

ASP.net 폼 인증에서 2 가지 logUrl을 사용할 수있는 방법이 있습니까? 가능한 경우 일부 사용자를 다른 로그인 페이지로 보내고 싶습니다. 아래에 표시된 것처럼 하위 디렉토리에 web.config를 추가하려고 시도했지만이 오류가 발생했습니다. "응용 프로그램 수준 이상으로 allowDefinition = 'MachineToApplication'으로 등록 된 섹션을 사용하는 것은 오류입니다."폼 인증 : 여러 개의 loginUrl을 가질 수 있습니까?

나는 이것에 다수 포스트를 읽었다 & 나는 이것이 달성 가능하지 않거나, 적어도 쉽게 달성 할다는 것을 생각하고있다. 어떤 충고? 내 사이트는 매우 다른 2 개의 로그인 프로세스가 필요합니다. 그래서이 작업을 수행하려고합니다. 당신이 하나를 떠날 경우 어떻게

<!--app root--> 
<authentication mode="Forms"> 
    <forms loginUrl="/NormalLogin/Login.aspx" /> 
</authentication> 

<!--subdirectory--> 
<authentication mode="Forms"> 
    <forms loginUrl="/SSOLogin/Login.aspx" /> 
</authentication> 
+0

allowDefinition 오류 – RelevantUsername

+0

을 제거하기 위해 프로젝트를 정리하려고합니다.하지만이 문제는 태그가 하위 디렉토리에 나타나기 때문에 발생합니다. –

+0

나는 대답이 '아니오'라고 생각하지만, 성취하려고하는 바를 정확히 설명하면 더 많은 도움을 얻을 수 있습니다. 예를 들어 단일 로그인 URL은 두 가지 프로세스 중 하나를 선택하는 데 사용할 기준을 전달하기 위해 몇 가지 메커니즘 (예 : 쿠키)이있는 매우 다른 두 개의 프로세스를 구현할 수 있습니다. – Joe

답변

2

<forms loginUrl="/Login.aspx" /> 말을하고 Login.aspx 페이지를 Page_Load 메소드를 오버라이드 (override). 쿼리 문자열의 returnURL 매개 변수를 확인하고 NormalLogin이 /NormalLogin/Login.aspx로 리디렉션되어 있으면 SSOLogin/Login.aspx로 리디렉션합니다.

관련 문제