Skip to content

SECURIoTESIGN/SAM-API

Repository files navigation

SAM-API


Project Overview

Security Advising Modules (SAM) is a framework that aggregates and connects the various modules developed under the scope of the SECURIoTESIGN project while providing a graphical interface to interact with them. SAM is modular, allowing for both quick integrations of newly developed modules and updates to existing modules. SAM works as a personal security assistant, more relatable, and capable of communicating with the end-user through a series of easily understandable questions, which the user can answer directly or through a set of predefined answers.

SAM's Web API or backend is availabe on this repository, while the frontend is available here.

Documentation

You can find the API documentation at the following link. Additionally, the documentationcan can be recompiled as follows:

 cd docs
 make html

Installation

The installation, for development proposes only, can be accomplished through a group of Docker containers.

  1. Clone the public repository.
  2. Create the API and database docker imagens and subsequent containers:
cd sam-api
make

The database and API container will be deployed with API port set to 8080 and database port set to 3306. The database user will be root and the password secure.

  1. Deploy the database into the database container:
sudo docker exec -it sam-db python3 install_db.py

You can access the database using DBeaver or similar (use sudo docker inspect sam-db to get the IP assigneted to the sam-db container).

  1. Develop away! :) You can start both containers as follows:
sudo docker stop sam-api && sudo docker start sam-api

SAM's REST services can be tested and accessed through insomnia – The Insomnia JSON file of this project can be found here.

⚠️ The contents of folder sam-api are mapped to the sam-api container, any local changes will be reflected.

Acknowledgment

This work was performed under the scope of Project SECURIoTESIGN with funding from FCT/COMPETE/FEDER with reference number POCI-01-0145-FEDER-030657. This work is funded by Portuguese FCT/MCTES through national funds and, when applicable, co-funded by EU funds under the project UIDB/50008/2020, research grants BIL/Nº11/2019-B00701, BIL/Nº12/2019-B00702, and FCT research and doctoral grant SFRH/BD/133838/2017 and BIM/n°32/2018-B00582, respectively, and also supported by project CENTRO-01-0145-FEDER-000019 - C4 - Competence Center in Cloud Computing, Research Line 1: Cloud Systems, Work package WP 1.2 - Systems design and development processes and software for Cloud and Internet of Things ecosystems, cofinanced by the European Regional Development Fund (ERDF) through the Programa Operacional Regional do Centro (Centro 2020), in the scope of the Sistema de Apoio à Investigação Científica e Tecnológica - Programas Integrados de IC&DT.

About

Security Advising Modules (SAM) Web API

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages