Skip to main content

Secure File Storage is a secure, encrypted file storage solution developed in Python. It combines strong encryption, modular architecture, logging and basic access control.

Project description

Secure File Storage

CI Build and Push to GitHub Container Registry Build and Push to Docker Hub CodeQL Advanced Upload Python Package Build and Deploy Docs

Secure File Storage is a secure, encrypted file storage solution developed in Python. It combines strong encryption, modular architecture, logging and basic access control.

Features

  • AES-256 encryption for secure file storage
  • User authentication with hashed passwords and session management
  • Encrypted file metadata stored securely in SQLite
  • Audit logging capturing file access and user actions
  • Containerized deployment using Docker and Docker Compose
  • Continuous Integration and Deployment pipeline with linting and tests (GitHub Actions)

Security Principles

  • Confidentiality: AES-256 encryption ensures stored files remain confidential
  • Integrity: File hashing verifies integrity of uploaded files
  • Accountability: Access logs provide traceability of user actions
  • Compliance: Architecture inspired by ISO27001 and GDPR principles to promote security-by-design and privacy awareness

DevOps

  • Docker for consistent environment and easy deployment
  • Unit tests with Pytest
  • CI/CD pipeline configured with GitHub Actions for automated testing and code quality checks

Usage

Access web interface at http://localhost:5000.

Pip package

pip install secure-file-storage-milosz275
secure-file-storage

Docker

From Docker hub container registry:

docker pull mlsh/secure-file-storage:latest
docker run -d -p 5000:5000 mlsh/secure-file-storage:latest

From GitHub container registry:

docker pull ghcr.io/milosz275/secure-file-storage:latest
docker run -d -p 5000:5000 ghcr.io/milosz275/secure-file-storage:latest

Manually on cloned repository:

export COMPOSE_BAKE=true
docker-compose build
docker-compose up

Manual setup

git clone https://github.com/milosz275/secure-file-storage.git
cd secure-file-storage
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
pip install --upgrade pip
python3 secure_file_storage/src/setup_env.py
gunicorn --log-level warning -w 4 -b 0.0.0.0:5000 secure_file_storage.main:app

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

secure_file_storage_milosz275-0.2.0.tar.gz (11.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

secure_file_storage_milosz275-0.2.0-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file secure_file_storage_milosz275-0.2.0.tar.gz.

File metadata

File hashes

Hashes for secure_file_storage_milosz275-0.2.0.tar.gz
Algorithm Hash digest
SHA256 2dacb10cc5940793b56319dc1c2844847e5c5eada5017306492a689c9fedaf95
MD5 65442662e2a8a395b30efc61561decea
BLAKE2b-256 5b5abab326aeed00665ff4a425aa2a8199b4761b9fcd7073e302deba66e7d23a

See more details on using hashes here.

Provenance

The following attestation bundles were made for secure_file_storage_milosz275-0.2.0.tar.gz:

Publisher: python-publish.yml on milosz275/secure-file-storage

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file secure_file_storage_milosz275-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for secure_file_storage_milosz275-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cd87e500589a7886c79a6ba61730f1ed9d19278cae1c192e70fa42e010088824
MD5 e1dc49d112aad7c5e5777c25e808a668
BLAKE2b-256 afb71615e1c427f6cb1767c8329827ba0f069540b78cdcc2870f921f85a3a337

See more details on using hashes here.

Provenance

The following attestation bundles were made for secure_file_storage_milosz275-0.2.0-py3-none-any.whl:

Publisher: python-publish.yml on milosz275/secure-file-storage

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page