first commit
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
# app/middlewares/cors.py
|
||||
from flask import request
|
||||
|
||||
def cors_headers(response):
|
||||
"""Allow cross-origin requests"""
|
||||
response.headers["Access-Control-Allow-Origin"] = "*"
|
||||
response.headers["Access-Control-Allow-Methods"] = "GET, POST, PUT, PATCH, DELETE"
|
||||
response.headers["Access-Control-Allow-Headers"] = "Authorization, Content-Type"
|
||||
return response
|
||||
@@ -0,0 +1,14 @@
|
||||
# app/middlewares/encryption.py
|
||||
from cryptography.fernet import Fernet
|
||||
import os
|
||||
|
||||
ENCRYPTION_KEY = os.getenv("ENCRYPTION_KEY", Fernet.generate_key())
|
||||
cipher = Fernet(ENCRYPTION_KEY)
|
||||
|
||||
def encrypt_data(data):
|
||||
"""Encrypt sensitive data"""
|
||||
return cipher.encrypt(data.encode()).decode()
|
||||
|
||||
def decrypt_data(data):
|
||||
"""Decrypt sensitive data"""
|
||||
return cipher.decrypt(data.encode()).decode()
|
||||
@@ -0,0 +1,11 @@
|
||||
# app/middlewares/request_validator.py
|
||||
from flask import request
|
||||
from app.helpers.response_helper import ResponseHelper
|
||||
|
||||
def validate_json():
|
||||
"""Ensure request has valid JSON"""
|
||||
if not request.is_json:
|
||||
return ResponseHelper.error(
|
||||
message="Request must be JSON",
|
||||
status_code=415
|
||||
)
|
||||
@@ -0,0 +1,8 @@
|
||||
# app/middlewares/auth.py
|
||||
from flask import request, jsonify
|
||||
|
||||
def require_api_key():
|
||||
"""Middleware to check if API key is present"""
|
||||
api_key = request.headers.get("X-API-KEY")
|
||||
if not api_key:
|
||||
return jsonify({"error": "Missing API key"}), 403
|
||||
Reference in New Issue
Block a user