2011-02-08 4 views
2

나는 관리자에 대해서만 controler를 생성하고 난 추가 :거부 ​​액세스를 한 후 내보기

[Authorize(Roles = "Admin")] 

클래스 정의하기 전에. 관리자로 사이트를 사용하려고하면 LogOn 사이트로 리디렉션됩니다. LogOn으로 리디렉션을 변경하거나 로그온 사이트에 추가 정보를 추가하려면 어떻게합니까?

답변

7

로그인 한 사용자가 로그인했지만 페이지에 액세스 할 수없는 사용자를 수신 거부하는 것은 즉시 사용 가능한 AuthorizeAttribute 사용의 단점 중 하나입니다. 당신은 두 가지 옵션이 있습니다

  • 사용자 지정 권한 부여 속성을 만들기을 (참조 : Redirecting unauthorized controller in ASP.NET MVC를)

  • 이 변경 Web.config의에서 "형태"요소의 "loginUrl"속성은 액션 메소드를 가리 키도록 로그인 여부에 따라 리디렉션을 처리합니다. 조치 방법을 확인하여 사용자가 로그인했는지 여부를 확인할 수 있습니다. 로그인 한 경우 승인되지 않은 액세스보기를 표시 할 수 있으며 그렇지 않은 경우 로그인 페이지로 보낼 수 있습니다. 예 : <authentication mode="Forms"><forms loginUrl="~/error/unauthorized" timeout="2880"></authentication>

+0

목록에서 두 번째 것이 나의 날을 저장했습니다. 감사 – tkt986

관련 문제