Project:Tool Access Control/ACServer

From London Hackspace Wiki
Jump to navigation Jump to search

Summary

ACServer is the access control server that is used by ACNodes (work it out!) to query weather the owner of a presented rfid card has access to the tool and what level of access he/she has. The codebase lives on our github repo.

TODO

  • All issues on the ascerver repository.
  • Code a web ui for adding tools/maintainers/nodes (mentar+levi?)

Current deployment

  • acserver:1234 current install, purpose built VM running on lamarr.
  • babbage:1234 legacy install only used by the 3-in-1 acnode, which was the first revision

Troubleshooting

The acserver permission database is synced with our membership database every minute and leaves a heartbeat at /var/log/acserver_update.log. So check the last modified stamp on that and if the heartbeat is returning 1

The application itself is in /var/www/acserver and relies on the local mysql database to work properly also it uses the nginx webserver (leaner, quicker than apache2) so make sure that is running too


Web UI improvement

Requirements

  • Authenticate the user (best done by extending the current member website codebase)
  • For users with no permissions:
    • Look up the state of the tools and if they are currently in use
  • For users with normal permissions:
    • All access that no permissions grant
  • For users with maintainer permissions:
    • All access that normal permissions grant
    • Review the log of people who have used the machine
    • Mark the equipment out of order
    • Assign new maintainers
    • Temporarily suspend users from access to tools
  • ACServer maintainers
    • All access that maintainer permissions grant
    • Add new tools
    • Assign maintainers to tools