WaTTS allows using any legacy service with federated identities, such as eduGain or google.
For this, WaTTS accepts federated identities (via OpenID Connect) and uses a plugin scheme to generate credentials for your service. This allows you to provide services that do not normally support federated identities to federated users.
And the best is that plugins for common services already exist. They can be used as examples to support additional services.
Existing plugins are available for
- SSH, SSH-CA
- S3 storage (commercial DDN appliance)
- OpenNebula cloud middleware
- X.509 online certificate authorities (CAs)
WaTTS uses the OpenId Connect certified library oidcc.
WaTTS provides packages for every release, just download the package for your sytem from the latest release and install them. After installing you need to configure it according to the Documentation.
WaTTS has nightly builds for packages for centos and Ubuntu/Debian. Download and install the package on your system and start configuring and using it, following the Documentation.
WaTTS requires Erlang OTP 18.1 or newer to run (due to a bug in the cover compiler, OTP 18.3 or newer is needed to run the tests). For configuration, WaTTS uses cuttlefish, which needs to be installed in the Erlang Runtime Sytem folder. Supporting scripts are in the utils directory.
First, clone the repository and change in the cloned folder:
git clone https://github.com/indigo-dc/tts.git
cd tts
For fast and easy setup, execute:
./utils/prepare_system.sh
This will install Erlang and cuttlefish on the system.
Copy the sample configuration and modify it according to the requirements; the config is located in
~/.config/watts
folder:
make sample_config
Once the adjustments are made in the config, or to (re)start the WaTTS after changing the configuration , execute:
make run
In browser, open local WaTTS instance on localhost:8080. The documentation is at localhost:8080/docs/.
In order to stop WaTTS, type the following in the console (the '.' at the end is important):
q().
The sample configuration includes a development INDIGO Identity and Access Management (IAM) configuration (which only runs at localhost:8080), and a simple Info service.
To add more OpenId Connect Provider or services, edit the configuration file. Modifying the configuration is described in the Configuration Guide.
Further documentation for WaTTS can be found in the WaTTS Documentation GitBook.