Безопасность документов в ASP.NET MVC

Я уже знаю о безопасности пользователей и ролей в ASP.NET MVC. Но теперь мне нужно что-то более гранулярное.

Допустим, у меня есть список документов, для некоторых из которых пользователь авторизован, для некоторых нет. Каждый документ имеет соответствующую запись в таблице документов в базе данных. Документы можно скачать для просмотра, если у пользователя есть безопасный доступ. Документы также могут быть добавлены, если у вас есть роль. У каждого документа есть URL, а у каждого списка документов есть URL.

Я хотел бы, чтобы безопасность урезать список так, чтобы пользователь видел только те документы, для которых он авторизован. Но мне также нужно аутентифицировать запросы URL для этих списков и документов, поскольку ничто не мешает пользователю сделать закладку на документ, к которому у него больше нет доступа, или просто ввести URL в браузер.

Подходит ли для этого встроенная модель безопасности на основе ролей или мне нужно создать отдельную безопасность на основе таблиц? Могу ли я установить безопасность в своем хранилище, чтобы возвращаемые записи уже были обрезаны, или это должно быть частью контроллера? Нужен ли мне атрибут безопасности для проверки запроса контроллера или я должен просто поместить его в метод контроллера как первые несколько строк кода?

Ответы на вопрос(2)

Ваш ответ на вопрос