Manages user related data as well as authentication and permissions. Connects to Keycloak and optionally AD or OpenLDAP
This project is using Poetry to handle the dependencies. Installtion instruction for poetry can be found at https://python-poetry.org/docs/#installation
-
Clone the project.
git clone https://github.com/PilotDataPlatform/auth.git
-
Install dependencies.
poetry install
-
Add environment variables into
.env
. Use.env.schema
as a reference. -
Run setup scripts for postgres
-
Run schema migration using alembic.
poetry run alembic upgrade head
-
Run SQL script to populate casbin permissions
-
Run application.
poetry run python run.py
This project can also be started using Docker.
-
To build and start the service within the Docker container, run:
docker compose up
-
Migrations should run automatically after the previous step. They can also be manually triggered:
docker compose run --rm alembic upgrade head
You can contribute the project in following ways:
- Report a bug.
- Suggest a feature.
- Open a pull request for fixing issues or adding functionality. Please consider using pre-commit in this case.
The development of the HealthDataCloud open source software was supported by the EBRAINS research infrastructure, funded from the European Union's Horizon 2020 Framework Programme for Research and Innovation under the Specific Grant Agreement No. 945539 (Human Brain Project SGA3) and H2020 Research and Innovation Action Grant Interactive Computing E-Infrastructure for the Human Brain Project ICEI 800858.