generated from nathanwoodburn/python-webserver-template
d1c10d781dcc8a8c08c3b1a8a48c949c7fc7c5eb
All checks were successful
Build Docker / BuildImage (push) Successful in 30s
Emergency Access System
A secure emergency information access system using YubiKey authentication. This application allows authorized users to access critical emergency information stored in Markdown format.
Features
- YubiKey authentication for secure access
- Markdown rendering with syntax highlighting
- Webhook for remote updates of emergency information
- Mobile-friendly interface
- Hidden passwords that reveal when clicked
Setup
- Clone this repository
- Install dependencies:
pip install -r requirements.txt - Create a
.envfile based on.env.example:cp .env.example .env - Edit the
.envfile with your settings
YubiKey Configuration
- Get your YubiKey API credentials from https://upgrade.yubico.com/getapikey/
- Add your client ID and secret key to the
.envfile - Determine your YubiKey ID (first 12 characters of any OTP generated by your YubiKey)
- Add the YubiKey ID to the
.envfile
Webhook Secret Generation
The webhook requires a strong secret to secure remote updates. Use one of these methods to generate a secure secret:
Option 1: Using Python
import secrets
print(secrets.token_hex(32)) # Generates a 64-character hex string
Option 2: Using OpenSSL
openssl rand -hex 32
Option 3: Using /dev/urandom (Linux/Mac)
head -c 32 /dev/urandom | xxd -p -c 32
Add the generated secret to your .env file:
Description
Languages
HTML
49%
Python
46.8%
CSS
2.6%
Dockerfile
1.6%