У меня есть приложение, которое имеет содержание, которое должно быть установкой для полномочий (т.е. member/non-member)
У меня есть установка ролей/аутентификации очень хорошо, которая не является моей проблемой. Мой вопрос в основном спрашивает лучший способ сохранить полномочия для каждого объекта. По существу существуют "Гостевые" и "членские" роли, и простой "Позволяют", "Отклоняют" полномочия для каждого объекта.
Какие-либо идеи? Программа записана в ASP.NET MVC, использующий C#, LINQ и MS-SQL 2005.
] Если вы хотите защитить активы [] [] (файлы, строки базы данных, доменные объекты, документы и т.д.) вместо функций приложения [] [] или [] [], безопасность на основе ролей не очень хорошо подходит. [
] [] Лучшей моделью является использование [] списков контроля доступа [] (ACL), как вы знаете из NTFS. Вы почти сами это сказали, потому что вам нужно назначать определенные разрешения на каждый объект для каждого пользователя или роли. Вот что делает ACL.[
] []Если вам нужно защитить объекты, которые в конечном счете являются строками в SQL Server, вам нужно определить пользовательские таблицы для ваших ACL, так как SQL Server не поддерживает разрешения на уровне строк.[
] []Основываясь на данных в этих ACL, вы должны реализовать необходимые проверки безопасности в компонентах доступа к данным.[
] []Вот несколько ссылок на соответствующие ответы SO:[
] []