Project:Tool Access Control/ACNet: Difference between revisions

From London Hackspace Wiki
Line 49: Line 49:


PHP Code Igniter implementation started by [[User:mentar|mentar]] located here [https://github.com/mentarus/ACServer here]
PHP Code Igniter implementation started by [[User:mentar|mentar]] located here [https://github.com/mentarus/ACServer here]
Currently running on Babbage for dev purposes, will be run on a secure box after.
=== Running ===
Go to a shell on babbage.
Make sure it's not already running by:
<code>sudo lsof -i :1234</code>
Then:
<code>cd /var/www/ACNode</code>
<code>./start.sh</code>
=== Testing ===
Currently only test tool active (node 1).
As per Sol's ACNode rest spec:
<code>curl -H 'Accept: text/plain' http://babbage:1234/1/sync/</code>
<code>curl -H 'Accept: text/plain' http://babbage:1234/1/card/04FF7922E40080</code>


== Membership DB ==
== Membership DB ==
Running on Turing VM slice (hosted outside the space as it has personal data). Accessed in JSON format.
Running on Turing VM slice (hosted outside the space as it has personal data). Accessed in JSON format.

Revision as of 13:22, 19 March 2013

Summary

This page aims to scope out the different projects that work together as part of the Access Control Network. The main components are:

  • ACNode - The clients that sit on the tool that is being controlled and manage physical access by reading the rfid card.
  • ACServer - The server stores the authentication information and pulls membership information from Turing over JSON and stores is at a SQLite DB
  • Membership DB - Secured storage of membership data.

System diagram

<graphviz border='frame' format='png' >

digraph rfboard{
  rankdir=TD;
  size="10,5!";
  
  subgraph cluster_0 {

node [shape=box,style=filled,color=lightgrey]; label = "ACServer";

       sqlite [label="SQLite",shape=box];
       httpserver [label="HTTP server",shape=box];
       httpserver -> sqlite;
       sqlite -> httpserver; 
  }
  acnode1 [label="ACNode",shape=box];
  acnode2 [label="ACNode",shape=box];
  acnode3 [label="ACNode",shape=box];
 
  membershipdb [label="Membership DB",shape=box];


  acnode1 -> httpserver;
  acnode2 -> httpserver;
  acnode3 -> httpserver;
  httpserver -> acnode1;
  httpserver -> acnode2;
  httpserver -> acnode3;
  membershipdb-> httpserver;

} </graphviz>

AC Node

Currently proposed (and built) by Solexious Link

AC Server

2 versions Python Flask implementation started by ms7821 can be located here further improved by Aaron

PHP Code Igniter implementation started by mentar located here here

Membership DB

Running on Turing VM slice (hosted outside the space as it has personal data). Accessed in JSON format.