2013-05-22 6 views
0

나는 webforms 응용 프로그램을 작성하여 페이지를 폴더로 분리하고, web.config를 사용하여 이러한 폴더 내에서 웹 페이지를 인증하고, 인증 된 사용자에게만 페이지를 인증하고 특정 역할에 특정 페이지를 허용합니다.ASP.NET 양식 승인이 작동하지 않습니다.

page1.aspx - page6.aspx에있는 'beheer'폴더가 있습니다. 아래에 표시된 폴더에 web.config도 있습니다.

"Admin"역할을 가진 사용자로 시스템에 로그인합니다. 페이지 3, 페이지 4, 페이지 5 또는 페이지 6으로 가면 모든 페이지를 사용할 수 있음을 의미합니다. page1 또는 page2로 가면 작동하지 않지만 page2 및 page3과 같은 권한이없는 메시지가 표시됩니다. 내가 잃어버린 것을 알아낼 수 없다.

감사합니다. 주전.

<configuration> 
    <system.web> 
    <authorization> 
     <deny users="?" /> 
     <!-- Deny all unauthenticated users --> 
    </authorization> 
    </system.web> 

    <location path="Page1.aspx" > 
    <system.web> 
     <authorization> 
     <allow roles="Page1,Admin,UserAdmin"/> 
     <deny users="*"/> 
     </authorization> 
    </system.web> 
    </location> 

    <location path="Page2.aspx" > 
    <system.web> 
     <authorization> 
     <allow roles="Page3,Admin,UserAdmin"/> 
     <deny users="*"/> 
     </authorization> 
    </system.web> 
    </location> 

    <location path="Page3.aspx" > 
    <system.web> 
     <authorization> 
     <allow roles="Page3,Admin,UserAdmin"/> 
     <deny users="*"/> 
     </authorization> 
    </system.web> 
    </location> 

    <location path="Page4.aspx,Page5.aspx,Page6.aspx" > 
    <system.web> 
     <authorization> 
     <allow roles="Admin,UserAdmin"/> 
     <deny users="*"/> 
     </authorization> 
    </system.web> 
    </location> 

</configuration> 
+0

같은 폴더에있는 모든 페이지가 있습니까? –

+0

예, 모두 동일한 하위 폴더에 있습니다. – Jurjen

답변

1

실제로 관리자 역할이 할당 된 것 같습니다. 이 부분은 잘못 보입니다.

<location path="Page4.aspx,Page5.aspx,Page6.aspx" > 
    <system.web> 
     <authorization> 
     <allow roles="Admin,UserAdmin"/> 
     <deny users="*"/> 
     </authorization> 
    </system.web> 
</location> 

path 요소에 둘 이상의 리소스를 지정할 수 없습니다. 자세한 내용은 here을 참조하십시오.

이로 변경해보십시오 :

<location path="Page4.aspx" > 
    <system.web> 
     <authorization> 
     <allow roles="Admin,UserAdmin"/> 
     <deny users="*"/> 
     </authorization> 
    </system.web> 
</location> 
<location path="Page5.aspx" > 
    <system.web> 
     <authorization> 
     <allow roles="Admin,UserAdmin"/> 
     <deny users="*"/> 
     </authorization> 
    </system.web> 
</location> 
<location path="Page6.aspx" > 
    <system.web> 
     <authorization> 
     <allow roles="Admin,UserAdmin"/> 
     <deny users="*"/> 
     </authorization> 
    </system.web> 
</location> 
관련 문제