Skip to content

Open-Industrial-PKI/devid_api

Repository files navigation

IEEE 802.1 AR Python REST API


IEEE 802.1 AR in a nutshell

IEEE 802.1 AR is a standard that defines a framework for secure device identity and authentication in a network. It provides a way for devices to securely and reliably establish their identity and authenticate with other devices in the network. The standard specifies the use of digital certificates and a public key infrastructure (PKI) to achieve this goal. The standard also defines a set of protocols and procedures for managing the digital certificates and ensuring their integrity. Overall, IEEE 802.1 AR is a crucial standard for ensuring the security and trustworthiness of devices in a networked environment.

API Definition

Route Verb Info Status
/mgmt/dev-id-cert/ POST return all items ✔️
POST create a new item ✔️
/datas:id GET return one item ✔️
PUT update item ✔️
DELETE delete item ✔️

Docker config

Get the code

$ git clone https://github.com/app-generator/flask-api-sample.git
$ cd flask-api-sample

Start the app in Docker

$ docker-compose up --build  

The API server will start using the PORT 5000.


Using the code

Step #1 - Clone the project

$ git clone https://github.com/app-generator/flask-api-sample.git
$ cd flask-api-sample

Step #2 - create virtual environment using python3 and activate it

$ virtualenv env
$ source env/bin/activate
$
$ # Virtualenv modules installation (Windows based systems)
$ # virtualenv env
$ # .\env\Scripts\activate

Step #3 - Install dependencies in virtualenv

$ pip install -r requirements.txt

Step #4 - setup flask

$ export FLASK_APP=run.py
$ export FLASK_ENV=development

Step #5 - start test APIs server at localhost:5000

$ flask run --host=0.0.0.0 --port=5000

Swagger API documentation is available at http://YOUR_HOST_NAME:5000/v1/


✨ Project Structure

api-server-flask/
├── api
│   ├── __init__.py
│   ├── apis
│   │   ├── __init__.py
│   │   ├── highlevel_idev_service_interface.py
│   │   ├── highlevel_ldev_service_interface.py
│   │   ├── Idev_cert_service_interface.py
│   │   ├── Idev_chain_service_interface.py
│   │   ├── Idev_key_service_interface.py
│   │   ├── Ldev_cert_service_interface.py
│   │   ├── Ldev_chain_service_interface.py
│   │   ├── Ldev_key_service_interface.py
│   │   ├── management_interface.py
│   ├── adapters
│   │   ├── __init__.py
│   │   ├── ...
├── README.md
├── requirements.txt
└── run.py

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published