컨트롤러에 여러 개의 사용자 정의 AuthorizeAttribute
을 스택 할 수 있습니까? MVC3 컨트롤러의 스태킹 승인
[IsOwner]
[IsFranchisee]
public class CartController : Controller
{
...
}
을하지만 행동이 불규칙합니다. 때로는 효과가 있으며 때로는 그렇지 않습니다 (주로 후자).
컨트롤러에 여러 개의 사용자 정의 AuthorizeAttribute
을 스택 할 수 있습니까? MVC3 컨트롤러의 스태킹 승인
[IsOwner]
[IsFranchisee]
public class CartController : Controller
{
...
}
을하지만 행동이 불규칙합니다. 때로는 효과가 있으며 때로는 그렇지 않습니다 (주로 후자).
구현이 정확합니까? FilterAttributes
(AuthorizeAttribute
에서 파생 됨)과 함께 보장 된 주문이 없기 때문에 묻습니다. Order
속성을 설정하지 않은 경우입니다.
당신은 행동이 엉뚱하다고 말했기 때문에 나는 하나의 속성이 다른 하나의 속성을 취소 할 수 있다고 생각했습니다. 예를 들어 IsOwner == true
사용자이지만 IsFranchisee == false
입니다. 어쩌면 권한이 부여되는지 여부는 어느 것이 먼저 실행되는지에 달려 있습니다.
그래서, 당신은 당신의 속성을 주문 속성을 부여 시도하고 행동이 여전히
예. 가능합니다. AuthorizeAttribute
에 대한 소스가 마음에 들면 AllowMultiple = true
입니다.
일반적으로 동적 권한 부여의 경우 컨트롤러 또는 작업에 [Authorize] 주석이 하나 부여 된 다음 컨트롤러 또는 동작 내부에서 권한이 처리됩니다.
그렇게 생각하지 않았다 이상한 경우 볼 수 있었다. 하지만 결국 구현을 변경했습니다. – Ron