
Я рассматриваю возможность использования динамического контроля доступа как способа ограничения доступа пользователей к файлам в моем файловом ресурсе, но не знаю, сможет ли он сделать то, что я пытаюсь сделать.
Все файлы в моем общем ресурсе имеют пользовательские метаданные, описывающие категорию, к которой относится файл (Финансы, Проект 1, Проект 2, Кадровые ресурсы и т. д.). У меня также есть таблица SQL, которая содержит Username -> Category
пары «ключ-значение».
Есть ли способ создать политику, которая будет определять доступ на основе чего-то вроде этого:
File.Category ANY_OF SQL_Table[Username]
Где SQL_Table[Username]
находится список всех категорий, к которым пользователь имеет доступ, как записано в таблице SQL?
Я не хочу использовать группы безопасности, потому что не хочу, чтобы все знали, кто в каких проектах участвует, а создание группы безопасности раскроет членство.
решение1
Dynamic Access Control (DAC) не имеет функциональности для использования SQL Server в качестве источника информации об авторизации, как вы описываете. Текущие версии продукта просто не делают этого.
Атрибуты Active Directory и свойства классификации файлов — единственные факторы, которые DAC может учитывать при принятии решения об авторизации. Вам придется либо использовать существующий атрибут AD, либо расширять схему, чтобы создать новый атрибут для выполнения того, что вы ищете.
Скрытие членства в группах безопасности не является полностью безнадежным делом, хотя вы определенно меняете поведение продукта по умолчанию. Закон США о правах и конфиденциальности в сфере образования (FERPA) вызвал некоторую потребность в группах AD со скрытым членством в сообществе высшего образования. Были некоторые обсуждения поActiveDir.orgпочтовая рассылка об этом в прошлом. Статья в Университете Вашингтона Windows Infrastructure оКонфигурация конфиденциальности группы курсатоже было бы на что посмотреть.