MVC 및 웹 API 컨트롤러가 모두 포함 된 프로젝트가 있습니다. Windows 인증을 사용합니다. 그러나 사용자 지정 특성을 사용하여 특정 웹 API 동작을 보호하려고합니다. 나는이 속성에 대한 호출 내 웹 API 조치를 장식 한맞춤 속성이 실행되지 않음
using System.Web;
using System.Web.Http;
using System.Web.Http.Filters;
namespace UoB.People.UserInterface.Mvc.Filters
{
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)]
public class IPAuthorize : AuthorizationFilterAttribute
{
protected bool AuthorizeCore(HttpContextBase httpContext)
{
return true;
}
}
}
: 나는 다음과 같은 단지 (궁극적으로는 사용자의 IP 주소를 확인합니다)를 설정 기본 흐름을 얻기 위해 만들었습니다. 문제는 코드를 로컬에서 실행할 때 속성 코드가 절대 적중되지 않는다는 것입니다. 액션이 있습니다. 이 특정 작업은 Windows Auth를 사용하지 않는 컨트롤러에 속합니다.
왜 내 속성이 호출되지 않습니까? 어딘가에 등록해야합니까? 프로젝트에 MVC 및 웹 API 컨트롤러가 모두 포함되어있어 충돌이 있습니까? 나는 어딘가 간단한 오류를 만들었나요?
감사합니다.
아니요, 필터를 전역으로 등록합니다. 즉, 모든 요청에 대해 필터를 호출합니다. – ondra