29 lines
887 B
Python
29 lines
887 B
Python
"""应用配置
|
|
|
|
从项目根目录的 .env 文件加载配置(若存在)。
|
|
API_KEY 留空表示不启用写操作鉴权(适用于纯内网环境)。
|
|
"""
|
|
|
|
import os
|
|
from pathlib import Path
|
|
|
|
from dotenv import load_dotenv
|
|
|
|
BASE_DIR = Path(__file__).resolve().parent.parent.parent
|
|
load_dotenv(BASE_DIR / ".env")
|
|
|
|
|
|
class Settings:
|
|
"""应用配置项"""
|
|
|
|
APP_NAME: str = os.getenv("APP_NAME", "VPS 资产管理系统")
|
|
# 写操作(POST/PUT/DELETE)鉴权密钥;留空则不校验
|
|
API_KEY: str = os.getenv("API_KEY", "")
|
|
# Agent 上报鉴权密钥;配置后 Agent 上报需携带 X-Agent-Key
|
|
AGENT_KEY: str = os.getenv("AGENT_KEY", "")
|
|
# 凭证加密主密钥(Fernet);生成:python -c 'from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())'
|
|
MASTER_KEY: str = os.getenv("MASTER_KEY", "")
|
|
|
|
|
|
settings = Settings()
|