gus

command module
v0.0.0-...-51d629d Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 18, 2016 License: BSD-3-Clause, BSD-3-Clause Imports: 24 Imported by: 0

README

gus

A golang server for authenticating users. This is a simple restful system that allows login, authentication, and data storage per-user. It is not an oauth2 server and does not style itself to be one.

Instead of libraries that perform authentication that you must tie into your code and databases, this server is meant to accept login requests and give you an authentication ticket (more like Kerberos). This ticket can be used to store session or user data, ensure that the user is allowed to access services, and can be passed to other services to associate a user with a system.

It was written to get away from the unified application environment that keeps programmers writing the same code or making large changes to their code to incorporate required libraries. Written in GO! (golang) it is self-contained and doesn't require additional web servers.

NOTE: This is not even alpha - it will change daily and should not even be used. It should be finished by June 2014 (unless I abandon it) Please don't bother with it at this point.

Documentation

Overview

Copyright 2014 Charles Gentry All Rights Reserved. Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.

gus is the Go User Service. It provides a simple interface for login, logout, authenticate and general user services. Is is flexible and configurable. The data can be stored in a number of different ways (database, flat files) and different configurations can be selected. The system has been carefully layered to segregate each part for easier expansion. You can Change the way the system is called (an http is the current interface), change where the data is stored, the way keys are encrypted, and you can limit the available options for user updates.

GUS has a built-in configuration and bootstrap system that can be used as a command-line program to setup the system for the first time. It includes extensive help and interactive prompts to help you configure the system.

helpDriver will handle all of the output of help to the user.

Directories

Path Synopsis
This set of routines encapsulates the cli structure, which holds the help text and definitions for a gus cli.
This set of routines encapsulates the cli structure, which holds the help text and definitions for a gus cli.
GUS uses common errors throughout rather than scattering error codes throughout the system.
GUS uses common errors throughout rather than scattering error codes throughout the system.
library
storage
Package storage provides field encryption for any driver.
Package storage provides field encryption for any driver.
mappers
Mappers contains functions that will map an input to an output.
Mappers contains functions that will map an input to an output.
web
Package web is the interface between HTTP/HTTPS calls and the service layer.
Package web is the interface between HTTP/HTTPS calls and the service layer.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL