Защитить внешнюю ссылку от перехода сторонние лица
Всем привет. У меня есть проект на MVC (С#) И Вебка с отчетами на Vue
Мне нужно из MVC по кнопочке переходить в веб морду с отчетами. Ну перейти не сложно. Вставил гиперссылку не вебку и все. А для работы самой вебки сделал WEB API
Но вопрос в следующем: В проекте с MVC есть авторизация по логину и IP, которые я получаю из HttpContext. Как защитить переход на ссылку Веб морды, чтобы туда не могли пройти не авторизованные пользователи ?
Ответы (1 шт):
Задача похожа на типичный RBAC сценарий (читать тут). В ASP.NET MVC есть встроенные средства как для поддержки авторизации пользователей и их ролей (для разграничения прав доступа), так и более простые механизмы для проверки авторизован пользователь или нет.
Рекомендую вглянуть на встроенный атрибут [Authorize] и его вариацию [Authorize(Roles = "Administrator")] (источник). Если вы используете встроенные средства аутентификации на основе куки то вам, скорее всего хватит [Authorize]. Если у вас собственная система авторизации, и не полагается на Asp.Net авторизацию, то вам надо будет реализовать свой слой для проверки авторизации доступа AuthorizationMiddleware, читать тут