Dynamic RBAC
Плагин добавляет в Payload v3 коллекции ролей и разрешений в базе данных и условия доступа, которые задаются в админке.
Установка
pnpm add payload-rbac-plugin Описание
Плагин добавляет в Payload v3 контроль доступа на основе ролей, где проверяются разрешения, а не жестко прописанные роли. После регистрации в plugins он создает коллекции roles и permissions (их slug настраивается через rolesCollectionSlug и permissionsCollectionSlug) и добавляет поле roles типа hasMany в auth-коллекцию, по умолчанию users. Это поле сохраняется в JWT, поэтому проверка ролей не требует отдельного запроса к базе. CheckPermission(slug) возвращает access-функцию Payload для операции над коллекцией, а hasPermission(user, slug) подходит для кастомных эндпоинтов, хуков и логики в UI. Разрешение может содержать условия, заданные в админке, например sender equals {{user.id}}. CheckPermission преобразует их в where-условие, а getPermissionQuery(user, slug) возвращает тот же результат для ручных запросов. Поддерживаются плейсхолдеры {{user.id}}, {{user.roles}} и {{user.role}}, а также значения true и false. Bulk CRUD Generator в админке создает разрешения create, read, update и delete для выбранной коллекции за одно сохранение. Вспомогательные поля генератора существуют только в интерфейсе и не сохраняются. Схемы ролей и разрешений можно расширять через rolesFields и permissionsFields, а видимость разделов в боковом меню задается опциями hideRoles и hidePermissions. Доступ к генерируемым коллекциям задается через rolesAccess и permissionsAccess, но по умолчанию он открыт всем, поэтому в продакшене эти опции нужно переопределить явно. Плагин требует payload ^3.85.0 как peer dependency. В пакете есть хук beforePermissionChange в src/hooks и тесты на Vitest, включая unit и интеграционные. Текущая версия 1.1.0, лицензия MIT.
О пакете
- Имя пакета
payload-rbac-plugin- Последняя версия
1.1.0- Размер
- 91 кБ
- Лицензия
- MIT
- Загрузок в неделю
- 3
- Последняя публикация
- 8 июн. 2026 г.
Ещё от Mhmod-Hsn
Профиль автораDictionary (Database Translations)
Плагин переносит UI-строки из JSON-файлов в коллекцию Payload, которую редакторы правят в админке без деплоя.
Advanced Sidebar
Добавляет иконки Lucide, свои группы и ссылки в боковое меню админки Payload без правки конфигурации коллекций.
Social Auth
Добавляет вход через GitHub, Google, Facebook, Twitter и LinkedIn на экран входа в админку Payload v3.
Похожие плагины
Ещё в категории «Авторизация»Simple Social Login
Плагин для Payload CMS 3.x: добавляет вход через Google и Microsoft (Entra ID) в админку и аутентифицированные коллекции.
Better Auth
Адаптер и плагины Better Auth для Payload CMS.
TOTP
Добавляет TOTP для многофакторной аутентификации в PayloadCMS.
Passkey
Добавляет вход через WebAuthn passkeys и управление ими в Payload CMS поверх Better Auth.
Subscribers
Управляйте подписчиками и каналами с помощью аутентификации по магической ссылке.
Keycloak SSO
Добавляет Keycloak SSO в Payload CMS 3 через OIDC-стратегию с PKCE, тихим обновлением токенов и доступом на основе permissions.