Утилита предназначена для тестирования производительности решений для модели авторизации RBAC:
- casbin
- самописное решение (handmade) с использованием инлайн sql-запросов
- самописное решение с использованием ORM Sequelize
Перед использоватем требуется установить СУБД PostgreSQL и подготовить таблицы из статьи. Добавить в таблицу Auth одну учётную запись для первого входа.
Node.js: v.18.12.0 (LTS)
CLI работает с СУБД PostgreSQL. Настройки подключения в файлах DB и ORMDB. Второе подключение с флагом prodMode == false используется для автотестов.
Для входа используется учётная запись из таблицы Auth.
list obj group={n} type={m} rep={k}
Использует авторизацию
- Да
Аргументы
- (string) group - номер группы объектов
- (string) type - номер типа объектов в рамках указанной группы
- (string) rep - количество итераций работы инфорсера
Вернёт
- (string) список объектов при наличии доступа или сообщение с отказом доступа
Пример
list obj group=3 type=2 rep=10
list obj group={n} rep={k}
Использует авторизацию
- Да
Аргументы
- (string) group - номер группы объектов
- (string) type - номер типа объектов в рамках указанной группы
- (string) rep - количество итераций работы инфорсера
Вернёт
- (string) список объектов доступных типов в рамках группы или сообщение с отказом доступа
Пример
list obj group=2 rep=1
prep data{n} pools={m}
Использует авторизацию
- Нет
Аргументы
- (string) data
- 1 - данные для casbin
- 2 - данные для handmade
- (string) pools - количество пулов данных
Вернёт
- (string) сообщение об успехе операции
Пример
prep data1 pools=5