Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

token-manager-server

jsanchesleao10ISC0.2.2

HTTP Server to handle authorization tokens

token, token-manager, server, authorization

readme

Token Manager Server

Token Manager Server is a server based on Restify created to manage authorization tokens.

Installation

npm install token-manager-server

QuickStart

var TokenManagerServer = require('./server').TokenManagerServer,
    server = new TokenManagerServer().listen(8000);  //starts a server in port 8000

You can also embed the service in you own restify app like this:


var restify = require('restify'),
    tokenManagerServer = require('token-manager-server'),
    server = restify.createServer();

    /* bodyParser and queryParser are required */
    server.use( restify.bodyParser() );
    server.use( restify.queryParser() );

    tokenManagerServer.use( server, '/myTokenEndpoint' ); // register get and post /myTokenEndpoint

API

GET /token?tokenString=<STRING>

Returns a json containing a token data. The format is like this:

  • Status code 200:

    {
      "clientId": "someclientid",
      "tokenString": "sometokenstring",
      "roles": []
    }
  • Status code 404:

    {
      "code": "ResourceNotFound",
      "message": "Some error message here"
    }

POST /token

The client should send an application/json data containing the following:

{
    "clientId": "someclientid",
    "tokenString": "sometokenstring",
    "expiration": 60000,
    "roles": ["client", "admin"]
}

The expiration time should be set in milliseconds. The server returns like this:

  • Status code 200:
{
    "clientId": "someclientid",
    "tokenString": "sometokenstring"
}
  • Status code 400:
    {
      "code": "InvalidContent",
      "message": "Some error message here"
    }

Standalone Server

bash >$ sudo npm install -g token-manager-server

The installation of the module gives you an path executable called token-manager-server, that simply bootstraps a server, running in a specified port.

bash >$ token-manager-server 8080

This command will start a server in port 8000. If no port is specified, port 3000 will be used.