Sign inSign up

tdierich/son-gtkusr

By tdierich

Updated over 8 years ago

Fork of sonatanfv/son-gtkusr

Image
0

1.8K

tdierich/son-gtkusr repository overview

SONATA's Gatekeeper User Management micro-service

Build Status

This is the folder of the User Management micro-service. This micro-service is used by the Gatekeeper API and is currently under development.

User Management

This micro-service enables identity, authentication and authorization features to the Service Platform, including features such:

  • Control for who can access to the Service Platform and what can be accessed
  • Users and Micro-services Authentication and Authorization
  • Manages User Accounts for different types of users
  • Manages Service Accounts; Micro-services are a different entity where no user is behind
  • Enables support for Direct Access Grants, exchanging user credentials to obtain an access token (JWT)
  • Supports two User type roles: developer and customer
  • Supports Micro-services roles
  • Supports Users groups
  • Supports users' public key storage for signing features (requires MongoDB database)

Building

The User Management micro-service is part of the Gatekeeper, and it can't be built as a standalone component. Given this approach, it is required to be built along with the available Gatekeeper micro-services. So:

  • each micro-service is provided in its own container (we're using docker);
  • the Dockerfile in each folder specifies the environment the container needs to work;
  • the docker-compose.yml file in the root of this repository provides the linking of all the micro-services.

Furthermore, the User Management module requires the Keycloak Identity and Access Management server. The son-keycloak component includes all the required configuration and deployment settings.

Dependencies

The libraries the Gatekeep depends on are the following:

For the micro-services implemented in ruby these dependencies can be checked in each folder's Gemfile.

Contributing

Contributing to the Gatekeeper User Management is really easy. You must:

  1. Clone this repository;
  2. Work on your proposed changes, preferably through submiting issues;
  3. Submit a Pull Request;
  4. Follow/answer related issues (see Feedback-Chanel, below).

Installation

Installing the Gatekeeper User Management is really easy. You'll need:

  1. the ruby programming language: we prefer doing this by using a version manager tool such as rvm or rbenv (we are using version 2.2.3);
  2. in each one of the subfolders, just run:
  3. bundle install
  4. please follow each specific folder's instructions on which environment variables to set
  5. rake start

Usage

Please refer to the son-gtkapi repository and each one of the other folders in this repository for examples of usage of each one of the already developed micro-services.

Documentation

Please refer to the Gatekeeper Github Wiki sections and check for User Management pages, which include information and examples of usage of its features.

License

The license of the SONATA Gatekeeper is Apache 2.0 (please see the license file).


Lead Developers

The following lead developers are responsible for this micro-service and have admin rights. They can, for example, merge pull requests.

Feedback-Chanels

Please use the GitHub issues and the SONATA development mailing list [email protected] for feedback.

Tag summary

Content type

Image

Digest

Size

161.1 MB

Last updated

over 8 years ago

docker pull tdierich/son-gtkusr