CERN-specific Flask-Multipass providers
Project description
Flask-Multipass-CERN
This package provides the cern auth and identity providers for Flask-Multipass.
These providers are only useful if you are at CERN and intend to use Flask-Multipass with the new Keycloak-based CERN authentication infrastructure.
In its current state it also overkill if all you want to do is logging in via OIDC. If that's your
goal use the authlib multipass provider since Keycloak works perfectly fine with it.
In case you need access to arbitrary group membership information (e.g. for user-managed ACLs) and the ability to search for CERN users, then this is a good choice for you.
CERN usage details
The following permissions (requested through the application portal) are needed:
- Group membership in
authorization-service-identity-readersfor basic login and user search functionality - Group membership in
authorization-service-groups-readersfor group functionality - Tokens with group membership information (optional) - this needs to be requested directly from the authorization service team
Requesting them will most likely require you to have a professional justification.
Performance
When using group membership or user search, the library need to get an "API access" token from
keycloak which typically takes 200-300ms. Set the cache key of the multipass identity
provider configuration to the import path of a Flask-Caching instance or a function returning such
an instance, or the instance itself to enable caching of tokens (until they expire) and group
data (30 minutes).
If group membership information is included in tokens, it will be cached during login so the extra API call when checking whether a user is in a group won't be needed unless the cached data already expired.
Note
In applying the MIT license, CERN does not waive the privileges and immunities granted to it by virtue of its status as an Intergovernmental Organization or submit itself to any jurisdiction.
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 Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file flask_multipass_cern-2.3.tar.gz.
File metadata
- Download URL: flask_multipass_cern-2.3.tar.gz
- Upload date:
- Size: 14.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cd76758446323bf59bbfe7240f8ac50009e5ad7b4f7445edd1a4fa798f92824b
|
|
| MD5 |
2b2c6c37e42fb7099b12e07119583858
|
|
| BLAKE2b-256 |
081a3be8c92ef8c449a9df7c484493d85d4b3b01f9fe18c6717945ee85e87238
|
Provenance
The following attestation bundles were made for flask_multipass_cern-2.3.tar.gz:
Publisher:
pypi.yml on indico/flask-multipass-cern
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
flask_multipass_cern-2.3.tar.gz -
Subject digest:
cd76758446323bf59bbfe7240f8ac50009e5ad7b4f7445edd1a4fa798f92824b - Sigstore transparency entry: 215761630
- Sigstore integration time:
-
Permalink:
indico/flask-multipass-cern@ffee91f91bb854e9d575501169e8a66d0599dead -
Branch / Tag:
refs/tags/v2.3 - Owner: https://github.com/indico
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@ffee91f91bb854e9d575501169e8a66d0599dead -
Trigger Event:
push
-
Statement type:
File details
Details for the file flask_multipass_cern-2.3-py3-none-any.whl.
File metadata
- Download URL: flask_multipass_cern-2.3-py3-none-any.whl
- Upload date:
- Size: 9.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d3142cdfe4217c299e7cf5ab0f0b7804f40f0f5361c0e506c7c19a35cc1d0fbb
|
|
| MD5 |
bb36f093b6d21ed69d0e9ea91b9559b9
|
|
| BLAKE2b-256 |
871da959263242ef19456ea48a4744b5c7657645c4f6b0d72060ebd722191c74
|
Provenance
The following attestation bundles were made for flask_multipass_cern-2.3-py3-none-any.whl:
Publisher:
pypi.yml on indico/flask-multipass-cern
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
flask_multipass_cern-2.3-py3-none-any.whl -
Subject digest:
d3142cdfe4217c299e7cf5ab0f0b7804f40f0f5361c0e506c7c19a35cc1d0fbb - Sigstore transparency entry: 215761640
- Sigstore integration time:
-
Permalink:
indico/flask-multipass-cern@ffee91f91bb854e9d575501169e8a66d0599dead -
Branch / Tag:
refs/tags/v2.3 - Owner: https://github.com/indico
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@ffee91f91bb854e9d575501169e8a66d0599dead -
Trigger Event:
push
-
Statement type: