1
0
Fork 0
freesewing/sites/backend/README.md

36 lines
1.3 KiB
Markdown
Raw Normal View History

## FreeSewing backend
2019-07-04 12:14:58 +02:00
This is a work in process to port the v2 backend to a new v3 backend.
2019-07-04 12:14:58 +02:00
It will be based on Express using Prisma with a SQLite database.
Watch this space.
## Permission levels
There are two different models to authenticate, as user, or with an API key.
The API keys have more granularity, their permission levels are:
- `0`: No permissions. Can only login but not do anything (used for testing)
- `1`: Read access to own people/patterns data
- `2`: Read access to all account data
- `3`: Write access to own people/pattern data
- `4`: Write access to all own account data (this is the `user` role)
- `5`: Read access to people/pattern data of all users (this is the `bughunter` role)
- `6`: Read access to all account data of all users
- `7`: Read access to all account data of all users + Write access for specific support functions (this is the `support` role)
- `8`: Write access to all account data of all users (this is the `admin` role)
User roles map to these permission levels as such:
- `user`: 4 (this is everybody)
- `bughunter`: 5 (a small group of people, less than 10)
- `support`: 7 (a small number of trusted collaborators, less than 5)
- `admin`: 8 (joost)
When using an API key above level 4, you need the following roles:
- 5: Requires bughunter, support, or admin
- 6,7,: Requires support or admin
- 8: Requires admin