Nerds Produce Money

    grpc-acl

    0.0.5 • Public • Published

    grpc-acl

    GRPC ACL microservice in node. Built on top of condor-framework and acl.

    Build Status Coverage Status

    Installation

    npm i --save grpc-acl
    npm i --save condor-framework
    npm i --save acl

    Usage

    • Copy the acl.proto file.
    • Create your server with the following code:
    const acl = require('acl');
    const AclServer = require('grpc-acl').AclServer;
     
    // Using memory backend. redis, mongo and others available (See acl module documentation)
    const backend = new acl.memoryBackend();
     
    const options = {
      'host': 'localhost',
      'port': 3000,
    };
     
    const server = new AclServer(backend, options);
    // you can add here your own middleware. (See condor-framework documentation)
    server.start();

    To call the service:

    const caller = require('grpc-caller');
    const client = caller('localhost:3000', './acl.proto', 'AclService');
    client.addUserRoles({'user': 'joed', 'roles': ['guest']}).then(() => {
      console.log('done!');
    });

    To find which methods are implemented take a look at the acl.proto file. They are pretty similar to the ones found in the documentation of the acl module.

    You can take the integration test as an example too.

    Arguments

    • backend. Check ACL documentation.
    • options.

    Options

    You can pass any condor options, and also the following:

    Option Description Default
    aclProtoFilePath Path to the acl.proto file ./acl.proto
    aclServiceName Service name of the AclService (must match to the one in the proto file) AclService

    License and Credits

    MIT License. Copyright 2017

    Built by the GRPC experts at Devsu.

    Install

    npm i grpc-acl

    DownloadsWeekly Downloads

    0

    Version

    0.0.5

    License

    MIT

    Last publish

    Collaborators

    • c3s4r
    • devsu