Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
This repository was archived by the owner on Apr 13, 2022. It is now read-only.

hyperledger-labs/hyperledger-fabric-based-access-control

Open more actions menu

Repository files navigation

Hyperledger-Fabric-Based-Acess-Control

Build Status Codacy Badge

Welcome to the Hyperledger Fabric Based Access Control project.

This project aims to mediate the access control flow coming from a centralized system, enhancing auditability and access control policy enforcement. It discourages illicit accesses, as the system administrators are not able to tamper the access logs (if applicable).

Paper

This project yielded a scientific paper, currently available at arXiv: https://arxiv.org/pdf/2006.04384.pdf

Pre-requisites

Make sure following tools are installed:

  • NodeJS ^10.15 (tested with 10.18.1)
  • Docker (latest)
  • Docker-compose (latest)

Installation steps

  1. Install the prerequesites and fabric-samples. NOTE: Install Fabric v2.0 with curl -sSL https://bit.ly/2ysbOFE | bash -s -- 2.0.0 1.4.4 0.4.18
  2. To avoid any conflict with previous network, remove all docker containers.
  • docker kill $(docker ps -q)
  • docker rm $(docker ps -aq)
  1. Start the Fabric Network and javascript version of abacFabric chaincode by running: ./startFabric

  2. You may run transactions against the ledger, specified at the end of script execution

  3. Navigate to the abacFabric directory

  4. Go to javascript and run npm install. NOTE: The client is still being refactored

Demonstration

  1. To enroll an admin user, run node enrollAdmin.js

  2. With the enrolled admin, register another user with node registerUser.js

  3. Run node index.js file to run the web application. I your terminal you should see the message "app is listening on port 3000 ..."

  4. In your browser go to the address localhost:3000. Now you record subjects and resources attributes and policies in JSON format on the ledger. Query the stored data. And check the access permissions based on stored data and given rule.

Shutting the network down

  1. To stop the network, run ./stopFabric

Test

Tests from the older version are located in the test folder

About

A Hyperledger Fabric Based Access Control system to mediate access control flow from centralized applications.

Resources

Contributing

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.