Skip to content
Snippets Groups Projects
README.md 1.74 KiB
Newer Older
Mark's avatar
Mark committed
# Install

Clone the repo  and make sure to also fetch the submodules.
```
git submodule update --init
```

Mark's avatar
Mark committed
Installation should be done via the helm using the helmchart contained in `./helmchart`.
Make sure to edit the values in `./helmchart/values.yaml` according to your needs
Mark's avatar
Mark committed

# Using SSO

Mark's avatar
Mark committed
To use OpenID Connect or oAuth you need to set up an oAuth Client for every application that
needs to authenticate it's users. You can leverage the Hydra Admin API to create oAuth clients.
As a starting point, you can have a look at the script provided in `test/`.
Mark's avatar
Mark committed

To use SSO, configure your oAuth client (for example netxtcloud) and create a new oAuth client object.
After your server is running, refer to `https://sso.<YOUR.DOMAIN>/.well-known/openid-configuration` as a reference on how to configure your openID Connect or oAuth client.
Mark's avatar
Mark committed

# Testing

In order to run tests locally, you can start the environment via `docker-compose`.
To make the test setup work on your machine, install docker and docker-compose and edit
the `docker-compose.yml` file. Make sure all of the URLS listed in the environment of the hydra
service are accessible by your agent (usually your browser) and the application that will act
as an oAuth / OpenID Connect client (for example nextcloud).

Notice that you need to create users and applications before being able to login.
You can use the scripts located in `user-panel/utils` to create users for testing.

If you don't have a test application yourself, you can use the small OpeinID Connect
test application located at `test/login_logout/`. Instructions on how to run the test
application can be found in `test/login_logout/README.md`.
Also refer to `.gitlab-ci.yml` to get an idea on how to run all of the tests that are
Mark's avatar
Mark committed
contained in this repository.