2012-12-17 5 views
0

내 asp 4.5 웹 사이트에서 권한 부여에 ClaimsPrincipalPermission을 사용합니다.ClaimsPrincipalPermission - 오류 코드

잘 작동합니다.

그러나 사용자가 그 반환 된 오류 코드는 500이 아니라 401

같이 어떤이가 예상되는 동작입니다 허용되지 않는 페이지를 호출하려고했을 경우에? 나는 401이 왜이 페이지가 호출 될 수 없는지 더 표현할 것이라고 가정한다.

또는 오류가 있습니까? 디버거에서 securityexception이 올바르게 throw 된 것을 볼 수 있습니다.

이 행동을 방해 할 방법이 있습니까? 왜 이런 일이 일어나는 지 아는 사람이 있습니까?

답변

1

500 오류 코드는 SecurityExceptions에 대한 기본 응답으로 보입니다. ASP.NET 반드시 액세스가 거부되고 그 사용자가 그것을 알고있는 모든 곳 던져진에 SecurityException 것을 알고하지 않기 때문에

추론 나에게 의미가 있습니다. 귀하의 웹 사이트 자체가 무언가를 할 수있는 권한이 충분하지 않은 경우 500이 예상됩니다.

Exception filters은 캐치되지 않은 예외를 분석하고 반환 할 HTTP 코드를 파악하는 좋은 방법입니다.

0

ClaimsPrincipalPermissionAttribute는 CLR에 의해 호출 및 역할 검사 실패의 경우에, SecurityException를 슬로우됩니다 : 당신은 아마

은 여기에서 볼 ... 웹 프레임 워크와 더 좋은 playes 무언가를 사용하고 싶습니다. 솔루션을 확인하려면 here을 확인하십시오.