修复 OAuth 解绑时非法聚合 FOR UPDATE,Web OAuth 审计 IP 与 TRUST_PROXY 对齐并校验 IP,账号绑定写入 oauth_state 失败时回滚 bind 标记。回滚条目时恢复 folder/type,导入冲突检查在 DB 失败时传播错误,MCP delete/history 要求已登录用户,全局请求体 10MiB 限制。CI 部署支持 DEPLOY_KNOWN_HOSTS,默认 accept-new;文档与 deploy 示例补充连接池、限流、TRUST_PROXY。移除含明文凭据的 sync-test-to-prod 脚本。
49 lines
1.2 KiB
TOML
49 lines
1.2 KiB
TOML
[package]
|
|
name = "secrets-mcp"
|
|
version = "0.5.6"
|
|
edition.workspace = true
|
|
|
|
[[bin]]
|
|
name = "secrets-mcp"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
secrets-core = { path = "../secrets-core" }
|
|
|
|
# MCP
|
|
rmcp = { version = "1", features = ["server", "macros", "transport-streamable-http-server", "schemars"] }
|
|
|
|
# Web framework
|
|
axum = "0.8"
|
|
axum-extra = { version = "0.10", features = ["typed-header"] }
|
|
tower = "0.5"
|
|
tower-http = { version = "0.6", features = ["cors", "trace", "limit"] }
|
|
tower-sessions = "0.14"
|
|
tower-sessions-sqlx-store-chrono = { version = "0.14", features = ["postgres"] }
|
|
governor = { version = "0.10", features = ["std", "jitter"] }
|
|
time = "0.3"
|
|
|
|
# OAuth (manual token exchange via reqwest)
|
|
reqwest.workspace = true
|
|
|
|
# Templating - render templates manually to avoid integration crate issues
|
|
askama = "0.13"
|
|
|
|
# Common
|
|
anyhow.workspace = true
|
|
chrono.workspace = true
|
|
serde.workspace = true
|
|
serde_json.workspace = true
|
|
sha2.workspace = true
|
|
rand.workspace = true
|
|
sqlx.workspace = true
|
|
tokio.workspace = true
|
|
tracing.workspace = true
|
|
tracing-subscriber.workspace = true
|
|
uuid.workspace = true
|
|
dotenvy.workspace = true
|
|
urlencoding = "2"
|
|
schemars = "1"
|
|
http = "1"
|
|
url = "2"
|