Рост количества пользователей информационной системы (далее ИС), как правило, приводит к усложнению ролевой модели, моделей предоставления и использования прав (далее Модели) в ИС. Для обеспечения управляемости ИС, при росте количества пользователей, требуется регулярно анализировать и оптимизировать Модели. Для анализа существующих Моделей в ИС предлагается:
- Кластеризировать данные Моделей;
- Провести бизнес/системный анализ Моделей с учетом данных кластеризации и дать рекомендации;
- Внести необходимые корректировки в Модели:
- Для демонстрации методов кластеризации создать тестовые Модели с помощью генератора датафреймов Pandas.
Ролевая модель, модели предоставления и использования прав отличаются друг от друга. Поэтому, требуется применять к каждой из них подходящий для неё метод кластеризации. Так, модель предоставления прав предсказуема, потому что обычно находится под контролем системного администратора. Квантом этой модели является квадрига «роль — условия — разрешения — объект». Кластером в этом случае на примере Tessa является правило доступа, а мета-кластером — группы правил, объединённые по определённым критериям. Для анализа этой модели можно отдельно проанализировать существующие кластера (в Tessa это правила доступа) и отдельно провести анализ квантилей «роль — условия — разрешения — объект» в контексте использования их в существующих кластерах для их реструктуризации с целью оптимизации прав, предоставляемых с их помощью.
Ролевая модель, если определяется администратором, также, как и модель предоставления прав, предсказуема. Её квантом является — роль, кластером — групповые роли, а мета-кластером — группы групповых ролей, объединённых по определённым критериям.
Модель использования разрешений (в Tessa на основе, например, данных таблицы ActionHistory) менее предсказуема и потому требует анализа с помощью методов кластеризации, минимально ограниченных в условии. Квант этой модели можно будет определить в результате предобработки данных. Кластеры и мета-кластеры получатся в результате кластеризации. Для этой модели характерны большое количество данных. В связи с этим, кластеризация подобных больших моделей имеет ряд условий:
- Требуется кластеризировать большое количество объектов и признаков. Количество объектов может достигать сотен тысяч и более, а признаков до несколько десятков и даже сотен;
- Как правило, заранее не известно количество, размер, форма и плотность кластеров;
- Требуется обеспечение масштабируемости алгоритма кластеризации и его воспроизводимость;
При наличии подобных условий основной выбор — это методы кластеризации DBSCAN, OPTICS и HDBSCAN. Все методы для начала можно использовать с минимальным набором кастомных значений параметров. Если предустановленные настройки не оправдают ожиданий по результату кластеризации, можно будет использовать большее количество кастомных значений.

