Some checks failed
Deploy to Production / Run Tests (push) Failing after 16m35s
Deploy to Production / Security Scan (push) Has been skipped
Deploy to Production / Build Docker Image (push) Has been skipped
Deploy to Production / Deploy to Staging (push) Has been skipped
Deploy to Production / Deploy to Production (push) Has been skipped
Deploy to Production / Notify Results (push) Successful in 31s
✨ 新功能: - SQLite数据库集成和持久化存储 - 数据库迁移系统和版本管理 - API分页功能和高效查询 - 用户搜索和过滤机制 - 完整的RBAC角色权限系统 - 结构化日志记录和系统监控 - API限流和多层安全防护 - Docker容器化和生产部署配置 🔒 安全特性: - JWT认证和授权 - 限流和防暴力破解 - 安全头和CORS配置 - 输入验证和XSS防护 - 审计日志和安全监控 📊 监控和运维: - Prometheus指标收集 - 健康检查和系统监控 - 自动化备份和恢复 - 完整的运维文档和脚本 - CI/CD流水线配置 🚀 部署支持: - 多环境Docker配置 - 生产环境部署指南 - 性能优化和安全加固 - 故障排除和应急响应 - 自动化运维脚本 📚 文档完善: - API使用文档 - 部署检查清单 - 运维操作手册 - 性能和安全指南 - 故障排除指南
60 lines
1.3 KiB
TOML
60 lines
1.3 KiB
TOML
[package]
|
|
name = "rust-user-api"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
authors = ["Your Name <your.email@example.com>"]
|
|
description = "A REST API server for user management built with Rust and Axum"
|
|
|
|
[dependencies]
|
|
# Web 框架
|
|
axum = "0.7"
|
|
tokio = { version = "1.0", features = ["full"] }
|
|
tower = "0.4"
|
|
tower-http = { version = "0.5", features = ["cors", "trace", "limit", "timeout"] }
|
|
|
|
# 序列化
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
serde_json = "1.0"
|
|
|
|
# 时间处理
|
|
chrono = { version = "0.4", features = ["serde"] }
|
|
|
|
# UUID 生成
|
|
uuid = { version = "1.0", features = ["v4", "serde"] }
|
|
|
|
# 环境变量
|
|
dotenv = "0.15"
|
|
|
|
# 日志和监控
|
|
tracing = "0.1"
|
|
tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] }
|
|
tracing-appender = "0.2"
|
|
metrics = "0.21"
|
|
metrics-exporter-prometheus = "0.12"
|
|
sysinfo = "0.29"
|
|
|
|
# 安全和限流
|
|
governor = "0.6"
|
|
dashmap = "5.5"
|
|
regex = "1.10"
|
|
|
|
# 密码哈希
|
|
bcrypt = "0.15"
|
|
|
|
# JWT 认证
|
|
jsonwebtoken = "9.0"
|
|
|
|
# 验证
|
|
validator = { version = "0.16", features = ["derive"] }
|
|
|
|
# 数据库
|
|
sqlx = { version = "0.7", features = ["runtime-tokio-rustls", "sqlite", "chrono", "uuid"] }
|
|
|
|
# 异步 trait
|
|
async-trait = "0.1"
|
|
|
|
# HTTP 客户端(用于测试)
|
|
[dev-dependencies]
|
|
reqwest = { version = "0.11", features = ["json", "rustls-tls"], default-features = false }
|
|
tokio-test = "0.4"
|
|
tempfile = "3.0" |