ASP MVC - Могу ли я объединить атрибуты авторизации с условной логикой?
Я знаю, что могу сделать это, чтобы потребовать обе авторизации (И):
[AdminAuthorize, OtherAuthorize]
public ActionResult MyAction(MyModel model)
{
...
}
... но как мне указать комбинацию OR (чтобы хотя бы одна из авторизаций должна была пройти)? Я думаю, я мог бы написать свой собственный атрибут авторизации, но могу ли я этого избежать? [AdminAuthorize || OtherAuthorize]
было бы удобно.
1 ответ
Решение
Один из способов обойти это - создать базовый контроллер с защищенными методами и без атрибутов авторизации, и позволить двум другим авторизованным классам наследовать его и вызывать его защищенные действия.