coinstac-storage-proxy

4.0.2 • Public • Published

coinstac-storage-proxy

COINSTAC hapi plugin for securing CouchDB. Documentation.

A hapi plugin that registers HTTP endpoints to perform authentication and authorization of requests to the COINSTAC storage service (CouchDB).

This package is unused as of COINSTAC v3

Installation

# install from git
npm i --save coinstac-storage-proxy

Use:

See API documentation here.

Dependencies

  • h2o2 (hapi plugin)
  • authentication: This plugin assumes that you have set up authentiation on your hapi server already, and expects to find the user's username at request.auth.config.username to perform authorization.
const hapi = require('hapi');
const storageProxy = require('coinstac-storage-proxy');
const h2o2 = require('h2o2'); //proxy utility for hapi

const server = new hapi.Server();
server.connection(); //set up default hapi connection

server.register(
    [
        {
            register: storageProxy,
            options: { targetBaseUrl: 'http://localhost:5984'}
        },
        h2o2
    ],
    (err) => {
        if (err) {
            //something went wrong
        }
    }
);

server.start();

Configuration Options:

  • targetBaseUrl required sets the baseUrl for redirection.

    • Must include:
      • protocol (e.g. 'http')
      • hostname (e.g. 'example.com')
    • May include:
      • port (e.g. ':5984')
      • path-prefix (e.g. '/myCouchInstance') (request path will be appended)
      • querystring (e.g. '?authToken=...') (request querystring will be appended)

Authentication enforcement

See src/index.js for a list of supported endpoints and how authorization is enforced.

License

MIT. See LICENSE for details.

Readme

Keywords

none

Package Sidebar

Install

npm i coinstac-storage-proxy

Weekly Downloads

3

Version

4.0.2

License

MIT

Unpacked Size

20.4 kB

Total Files

8

Last publish

Collaborators

  • cdaringe
  • swashcap