Защитить внешнюю ссылку от перехода сторонние лица

Рейтинг: 0Ответов: 1Опубликовано: 18.05.2023

Всем привет. У меня есть проект на MVC (С#) И Вебка с отчетами на Vue

Мне нужно из MVC по кнопочке переходить в веб морду с отчетами. Ну перейти не сложно. Вставил гиперссылку не вебку и все. А для работы самой вебки сделал WEB API

Но вопрос в следующем: В проекте с MVC есть авторизация по логину и IP, которые я получаю из HttpContext. Как защитить переход на ссылку Веб морды, чтобы туда не могли пройти не авторизованные пользователи ?

Ответы

▲ 0Принят

Задача похожа на типичный RBAC сценарий (читать тут). В ASP.NET MVC есть встроенные средства как для поддержки авторизации пользователей и их ролей (для разграничения прав доступа), так и более простые механизмы для проверки авторизован пользователь или нет.

Рекомендую вглянуть на встроенный атрибут [Authorize] и его вариацию [Authorize(Roles = "Administrator")] (источник). Если вы используете встроенные средства аутентификации на основе куки то вам, скорее всего хватит [Authorize]. Если у вас собственная система авторизации, и не полагается на Asp.Net авторизацию, то вам надо будет реализовать свой слой для проверки авторизации доступа AuthorizationMiddleware, читать тут