Мне обычно нужно авторизовать определенный параметр, который будет оцениваться при вызове службы в действии в MVC5. Например, предположим, что мое действие - public ActionResult Edit(string partnerName)
.Авторизовать параметр для действия в MVC5
Сегодня я справиться с этим, всегда оценивая if (!User.CanAccessPartnerModule(THIS_MODULE_ID, partnerName)) throw new UnauthorizedException();
Однако, я хотел бы быть в состоянии сделать что-то вроде этого:
[Authorize(Roles = THIS_MODULE_ID)]
public ActionResult Edit([AuthorizePartnerModule(THIS_MODULE_ID)] string partnerName)
{
...
}
Чтобы быть ясно, 1) Я не думаю, AuthorizeAttribute
был бы необходим, если бы это было реализовано, как я предполагаю, и 2) вещь, которой не существует, это AuthorizePartnerModuleAttribute
.
Есть ли готовый атрибут или учебник, объясняющий, как это может быть выполнено? А если нет, разве это не рекомендуется?
Да это возможно с помощью переопределяя атрибут Authorize. Если вы не получите ответ завтра, я отправлю код для этой конкретной проблемы. – Shoe
@ Спасибо, спасибо ... Я не знал, что 'AuthorizeAttribute' применяется к параметрам ... –