Доброго вечера!
Не подскажет ли кто хорошей литературы, каких-то выступлений или best-practicies на тему реализации ABAC?
Имеется в районе 10 млн записей разделённых на классы, которых около 5 000. Каждый класс имеет свою структуру документов (поля между классами могу вообще нигде не пересекаться). И вот теперь нужно в каждый класс добавить правила:
- в этом классе пользователю если у несть есть некое поле и оно равно некому значению - можно читать записи, в которых есть какое-то другое поле и какое-то другое значение
(пользователям, у которых есть свойство "aaa" можно читать записи, в которых есть свойство "Z" со значением "22" и поле "FF" со значением "LL" — например, пользователи, у которых email начинается на i* могут читать записи у которых есть поле "Color": "blue")
Всё что я нашёл описывает более простой случай, когда у всех документов есть какие-то заранее определённые поля - и правила пишутся в целом для базы - тут всё просто. Но если есть 5 000 классов - пользователь делает поиск - вот тут-то и возникает вопрос, а как навесить на этот запрос все эти 5000 правил? - да так, чтобы пользователь не ушёл пить чай в ожидании ответа :)
Буду благодарен за любые подсказки :)