Skip to content

watts-kit/watts

 
 

Repository files navigation

WaTTS - The INDIGO Token Translation Service

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.

Quickstart

Using Releases

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.

Using Nightly Builds

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.

Using Source

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.

Installation

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

Running the local WaTTS instance

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.

Documentation

Further documentation for WaTTS can be found in the WaTTS Documentation GitBook.

About

WaTTS - the INDIGO Token Translation Service

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Erlang 56.6%
  • HTML 27.1%
  • Elm 7.0%
  • CSS 4.8%
  • JavaScript 1.8%
  • Python 1.0%
  • Other 1.7%