2013-07-03 3 views
0

MVC 4 프로젝트에서 로그인했을 때 시스템에서 사용자를 삭제했습니다. 이제 사용자가 존재하지 않는 SimpleMembershipProvider 메소드 (또는 멤버쉽/역할 헬퍼)에서 예외가 발생합니다.삭제 된 사용자를 어떻게 처리합니까?

그러나 로그인 할 때 정상적으로 로그 오프 할 수있는 대신 오류 페이지가 표시되어 인증 쿠키가 구식이 될 때까지 페이지를 사용할 수 없게됩니다. 어떻게 이런 상황을 가로채는가? 그 예외를 처리하기 위해 어디에서든지 연결할 수없는 것 같습니다. 그것을 다루는 좋은 방법은 무엇입니까?

답변

1

역할 기반 권한을 사용하고 응용 프로그램에 권한 부여 설정이 올바로있는 경우이를 처리하는 적절한 방법은 사용자를 삭제하지 않고 자신의 역할을 수행하여 수행하는 영역에 대한 액세스 권한을 없애는 것입니다 그를 원하지 않아.

이렇게하려면 또 다른 방법은 활성화 된 플래그를 described in this article으로 사용자 정의하여 UserProfile에 추가하는 것입니다. 그런 다음 사용 가능으로 설정된 경우 승인 프로세스에서 enabled 플래그를 customizing the Authorize attribute으로 사용하여 권한 부여를 실패하십시오. 사용자를 삭제하는 대신 활성화 된 플래그를 false로 바꿉니다.