Default ACL implementation for Mara
Project description
Mara ACL
Default ACL implementation for mara with the following design choices:
- Authentication of users is handled externally, e.g. through a Oauth2 Proxy. An upstream authentication app manages authentication and then adds a http header identifying the user to each authenticated request.
- Each user is assigned a single role.
- Permissions are not based on urls, but on application-defined "resources". Thus, checking of permissions needs to be done in the application.
The ACL provides a single UI for both user and permission management. Users can be added / removed and their roles can be changed like this:
New roles are created by moving a user to a new role.
Permissions can be set for
- an individual user or a whole role,
- an individual resource, a group of resources or "All" resources.
Individual users inherit permissions from their role, and permissions on higher levels overwrite permissions on lower levels:
Each new user that is authenticated is automatically created with a default role in the acl:
This behavior can be switched off (so that only invited users can join). See config.py for details.
Please have a look at the mara example application for how to integrate this ACL implementation.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
File details
Details for the file mara-acl-2.1.0.tar.gz
.
File metadata
- Download URL: mara-acl-2.1.0.tar.gz
- Upload date:
- Size: 8.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bf8f1ea3467d93b2d7320bfb82ae731e11f789b54cc78e49b77f7cb4c4cc0bd2 |
|
MD5 | 6eec54a92e57b2122d45c66e4d2c2801 |
|
BLAKE2b-256 | 09e9e84bb42ecfa9067fb736c3641a6600a4172e75382c77f27abf34790f0faa |
File details
Details for the file mara_acl-2.1.0-py3-none-any.whl
.
File metadata
- Download URL: mara_acl-2.1.0-py3-none-any.whl
- Upload date:
- Size: 9.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2cd0b4cfa281b93dbe92bcf4954e3e67710eeff907ca65e6b583baef127e9016 |
|
MD5 | 7b68cfa86ec9f897baace55783e1c45a |
|
BLAKE2b-256 | ba01fea54b5592a9a1136e2f8385d243a2ec0f39ccb22113297a6ace806467ff |
File details
Details for the file mara_acl-2.1.0-2-py3-none-any.whl
.
File metadata
- Download URL: mara_acl-2.1.0-2-py3-none-any.whl
- Upload date:
- Size: 9.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d283bdd73d2886fb8d0ea28f00c4cb41069d737a62a0374140c81d9ca9c46f29 |
|
MD5 | 8ac611f9e10a070f46d8ff6b3569397d |
|
BLAKE2b-256 | 4561621fa630bd725603ac731b9bdf3ce9e6157b4097a6e0bc0e6e3ed17171a4 |