@gravitybv/strapi-plugin-permissions
v1.0.8
Published
Strapi plugin that handles permissions through a config file.
Readme
Strapi plugin - Permissions
This plugin is to have persistent permissions in different environments regarding api interaction.
Installation
- Install using
npm install @gravitybv/strapi-plugin-permissionsin the root of your Strapi project.
No access to @gravitybv?
If you dont have access to the @gravitybv scope you need to do the following:
- First you will need a personal access token (PAT)
- Create a toke with
repoandread:packagesscopes selected. Make sure to store this somehwere - Run
npm login --registry=https://npm.pkg.github.com --scope=gravitybv - Login with your github username and use the PAT as password
- Now you should be able to install this package in other projects
Usage
Enable in config/plugins.js:
{
"permissions": {
"enabled": true
}
}The plugin will automatically create a file in the config/ directory of your Strapi installation. This newly created file is named config/permissions.js and will contain default permissions upon first install.
The permissions in this file will automatically be set upon Strapi bootstrap.
Naming
Please use the prefix plugin:: to target a specific plugin.
Use api:: to target one of your own controllers.
When only specifying the prefix and entity name, without targeting a controller (e.g. api::restaurant or plugin::users-permissions), the plugin will set the permissions for all of the controllers in that entity.
To target a specific controller, please use: api::restaurant.restaurant, or plugin::users-permissions.auth.
Configuration
Typescript
When using in a typescript project add a config to the plugin config:
config/plugins.js
{
"permissions": {
"enabled": true,
"config": {
"typescript": true
}
}
}Advanced Options
You can configure the retry behavior when waiting for Strapi to load:
config/plugins.js
{
"permissions": {
"enabled": true,
"config": {
"maxRetries": 50,
"initialDelay": 200
}
}
}- maxRetries (default:
50): Maximum number of retry attempts before timing out - initialDelay (default:
200): Delay in milliseconds between retry attempts
The default configuration allows for a total wait time of 10 seconds (50 retries × 200ms)
