Комментарии 3
Делать и держать какие то доступы в виде енам на фронте не удобно, так как при их изменении придется пере собирать и деплоить фронт.
Уже есть готовые и более гибкие решения вроде https://casl.js.org/v6/en, почему бы не использовать их.
Также не нашел примера где например только создатель может редактировать/удалять сущности.
Но в целом для того чтобы написать abac на коленке сойдет)
Мы сфокусируемся на разработке системы авторизации и управления доступом на основе ролей для фронтенда. Этот аспект веб-разработки играет ключевую роль в обеспечении безопасности приложения
Да уж, после такого пафосного вступления ожидаешь увидеть использование Web Crypto API или известные сторонние пакеты шифрования или хотя бы свой велосипед на С/rust через webassembly, но ни как не про то как пользоваться простым менеджером состояния, с учетом что оно (состояние) легко меняется через vue devtools.
Может стоило ещё при инициализации Юзера вынести отдельно в словарь все права, а его права в этом словаре пометить True?
Тем самым не пробегаться каждый раз по массиву с помощью include, а брать значение по ключу. Если там false, значит нет прав, иначе есть.
Авторизация и управление доступом на основе ролей для фронтенда