122 lines
2.2 KiB
YAML
122 lines
2.2 KiB
YAML
server:
|
|
port: 18087
|
|
mode: release # debug, release
|
|
read_timeout: 30s
|
|
read_header_timeout: 10s
|
|
write_timeout: 30s
|
|
idle_timeout: 60s
|
|
shutdown_timeout: 15s
|
|
max_header_bytes: 1048576
|
|
|
|
database:
|
|
type: sqlite # current runtime support: sqlite
|
|
sqlite:
|
|
path: "D:/project/docs/evidence/ops/2026-03-24/rollback/20260324-103758/user_management.stable.db"
|
|
postgresql:
|
|
host: localhost
|
|
port: 5432
|
|
database: user_management
|
|
username: postgres
|
|
password: ""
|
|
ssl_mode: disable
|
|
max_open_conns: 100
|
|
max_idle_conns: 10
|
|
mysql:
|
|
host: localhost
|
|
port: 3306
|
|
database: user_management
|
|
username: root
|
|
password: ""
|
|
charset: utf8mb4
|
|
max_open_conns: 100
|
|
max_idle_conns: 10
|
|
|
|
cache:
|
|
l1:
|
|
enabled: true
|
|
max_size: 10000
|
|
ttl: 5m
|
|
l2:
|
|
enabled: false
|
|
type: redis
|
|
redis:
|
|
addr: localhost:6379
|
|
password: ""
|
|
db: 0
|
|
pool_size: 50
|
|
ttl: 30m
|
|
|
|
redis:
|
|
enabled: false
|
|
addr: localhost:6379
|
|
password: ""
|
|
db: 0
|
|
|
|
jwt:
|
|
algorithm: RS256
|
|
secret: ""
|
|
private_key_path: "./data/jwt/private.pem"
|
|
public_key_path: "./data/jwt/public.pem"
|
|
private_key_pem: ""
|
|
public_key_pem: ""
|
|
access_token_expire: 2h
|
|
refresh_token_expire: 168h # 7澶?= 168灏忔椂
|
|
|
|
security:
|
|
password_min_length: 8
|
|
password_require_special: true
|
|
password_require_number: true
|
|
login_max_attempts: 5
|
|
login_lock_duration: 30m
|
|
|
|
ratelimit:
|
|
enabled: true
|
|
login:
|
|
enabled: true
|
|
algorithm: token_bucket
|
|
capacity: 5
|
|
rate: 1
|
|
window: 1m
|
|
register:
|
|
enabled: true
|
|
algorithm: leaky_bucket
|
|
capacity: 3
|
|
rate: 1
|
|
window: 1h
|
|
api:
|
|
enabled: true
|
|
algorithm: sliding_window
|
|
capacity: 1000
|
|
window: 1m
|
|
|
|
monitoring:
|
|
prometheus:
|
|
enabled: true
|
|
path: /metrics
|
|
tracing:
|
|
enabled: false
|
|
endpoint: http://localhost:4318
|
|
service_name: user-management-system
|
|
|
|
logging:
|
|
level: info # debug, info, warn, error
|
|
format: json # json, text
|
|
output:
|
|
- stdout
|
|
- ./logs/app.log
|
|
rotation:
|
|
max_size: 100 # MB
|
|
max_age: 30 # days
|
|
max_backups: 10
|
|
|
|
admin:
|
|
username: ""
|
|
password: ""
|
|
email: ""
|
|
|
|
cors:
|
|
enabled: true
|
|
allowed_origins:
|
|
- "*"
|
|
|