[ PROMPT_NODE_24290 ]
Secrets Store 配置说明
[ SKILL_DOCUMENTATION ]
# 配置
## Wrangler 配置
### 基本绑定
**wrangler.jsonc**:
c
{
"secrets_store_secrets": [
{
"binding": "API_KEY",
"store_id": "abc123",
"secret_name": "stripe_api_key"
}
]
}
**wrangler.toml** (替代方案):
toml
[[secrets_store_secrets]]
binding = "API_KEY"
store_id = "abc123"
secret_name = "stripe_api_key"
字段说明:
- `binding`: 用于 `env` 访问的变量名
- `store_id`: 通过 `wrangler secrets-store store list` 获取
- `secret_name`: 标识符(不能包含空格)
### 环境特定配置
**wrangler.jsonc**:
c
{
"env": {
"production": {
"secrets_store_secrets": [
{
"binding": "API_KEY",
"store_id": "prod-store",
"secret_name": "prod_api_key"
}
]
},
"staging": {
"secrets_store_secrets": [
{
"binding": "API_KEY",
"store_id": "staging-store",
"secret_name": "staging_api_key"
}
]
}
}
}
**wrangler.toml** (替代方案):
toml
[env.production]
[[env.production.secrets_store_secrets]]
binding = "API_KEY"
store_id = "prod-store"
secret_name = "prod_api_key"
[env.staging]
[[env.staging.secrets_store_secrets]]
binding = "API_KEY"
store_id = "staging-store"
secret_name = "staging_api_key"
## Wrangler 命令
### 存储管理
bash
wrangler secrets-store store list
wrangler secrets-store store create my-store --remote
wrangler secrets-store store delete --remote
### 密钥管理 (生产环境)
bash
# 创建 (交互式)
wrangler secrets-store secret create
--name MY_SECRET --scopes workers --remote
# 创建 (管道输入)
cat secret.txt | wrangler secrets-store secret create
--name MY_SECRET --scopes workers --remote
# 列出/获取/更新/删除
wrangler secrets-store secret list --remote
wrangler secrets-store secret get --name MY_SECRET --remote
wrangler secrets-store secret update --name MY_SECRET --new-value "val" --remote
wrangler secrets-store secret delete --name MY_SECRET --remote
# 复制
wrangler secrets-store secret duplicate
--name ORIG --new-name COPY --remote
### 本地开发
**关键**: 生产环境密钥 (`--remote`) 在本地开发中不可访问。
bash
# 创建仅本地使用的密钥 (不加 --remote)
wrangler secrets-store secret create --name DEV_KEY --scopes workers
wrangler dev # 使用本地密钥
wrangler d