Skip to main content

Default ACL implementation for Mara

Project description

Mara ACL

mara-acl PyPI - License PyPI version Slack Status

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: User management

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: User management

Each new user that is authenticated is automatically created with a default role in the acl: User management

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mara-acl-2.1.0.tar.gz (8.7 kB view details)

Uploaded Source

Built Distributions

mara_acl-2.1.0-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

mara_acl-2.1.0-2-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

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

Hashes for mara-acl-2.1.0.tar.gz
Algorithm Hash digest
SHA256 bf8f1ea3467d93b2d7320bfb82ae731e11f789b54cc78e49b77f7cb4c4cc0bd2
MD5 6eec54a92e57b2122d45c66e4d2c2801
BLAKE2b-256 09e9e84bb42ecfa9067fb736c3641a6600a4172e75382c77f27abf34790f0faa

See more details on using hashes here.

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

Hashes for mara_acl-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2cd0b4cfa281b93dbe92bcf4954e3e67710eeff907ca65e6b583baef127e9016
MD5 7b68cfa86ec9f897baace55783e1c45a
BLAKE2b-256 ba01fea54b5592a9a1136e2f8385d243a2ec0f39ccb22113297a6ace806467ff

See more details on using hashes here.

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

Hashes for mara_acl-2.1.0-2-py3-none-any.whl
Algorithm Hash digest
SHA256 d283bdd73d2886fb8d0ea28f00c4cb41069d737a62a0374140c81d9ca9c46f29
MD5 8ac611f9e10a070f46d8ff6b3569397d
BLAKE2b-256 4561621fa630bd725603ac731b9bdf3ce9e6157b4097a6e0bc0e6e3ed17171a4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page