The documentation you are viewing is for Dapr v1.12 which is an older version of Dapr. For up-to-date documentation, see the latest version.
密钥 API 参考
获取 Secret
使用此端点,可以获取指定 secret store 的 Secret 值。
HTTP 请求
GET http://localhost:<daprPort>/v1.0/secrets/<secret-store-name>/<name>
URL 参数
参数 | 说明 |
---|---|
daprPort | dapr 端口。 |
secret-store-name | 要获取 Secret 的 secret store 的名称 |
name | 要获取 Secret 的名称 |
注意:所有的 URL 参数都是大小写敏感的。
查询参数
一些 secret stores 有 optional 元数据属性。 元数据使用查询参数:
GET http://localhost:<daprPort>/v1.0/secrets/<secret-store-name>/<name>?metadata.version_id=15
GCP Secret Manager
以下可选 meta 可以提供给 GCP Secret Manager 组件
查询参数 | 说明 |
---|---|
metadata.version_id | 给定 Secret 版本 |
AWS Secret Manager
以下可选 meta 可提供给 AWS Secret Manager组件
查询参数 | 说明 |
---|---|
metadata.version_id | 给定 Secret key 的版本 |
metadata.version_stage | 给定 Secret key 的版本阶段 |
HTTP 响应
响应正文
如果一个 secret store 支持多个 Secret 键值对,则会返回 JSON 有效负载,其中包含键名为字段及其各自的值。
如果密钥存储仅具有键值语义,则会返回 JSON 有效负载,其中密钥的名称作为字段,密钥的值作为值。
多密钥(如Kubernetes)响应:
curl http://localhost:3500/v1.0/secrets/kubernetes/db-secret
{
"key1": "value1",
"key2": "value2"
}
单密钥的响应:
curl http://localhost:3500/v1.0/secrets/vault/db-secret
{
"db-secret": "value1"
}
响应码
代码 | 说明 |
---|---|
200 | OK |
204 | 未找到 Secret |
400 | Secret store 丢失或配置错误 |
403 | 拒绝访问 |
500 | 未能获取 Secret 或未定义 secret store |
示例
curl http://localhost:3500/v1.0/secrets/vault/db-secret
curl http://localhost:3500/v1.0/secrets/vault/db-secret?metadata.version_id=15&metadata.version_stage=AAA
注意,如果部署到非默认命名空间中,上述查询还必须包含命名空间元数据(例如
production
如下)
curl http://localhost:3500/v1.0/secrets/vault/db-secret?metadata.version_id=15&?metadata.namespace=production
获取批量 Secret
使用此端点可以获取 secret store 中的所有 Secret 密钥存储。 建议在为 Dapr 配置密钥存储时使用 token 身份验证。
HTTP 请求
GET http://localhost:<daprPort>/v1.0/secrets/<secret-store-name>/bulk
URL 参数
参数 | 说明 |
---|---|
daprPort | dapr 端口。 |
secret-store-name | 要获取 Secret 的 secret store 的名称 |
注意:所有的 URL 参数都是大小写敏感的。
HTTP 响应
响应正文
返回的响应是包含多个 Secret 的 JSON。 JSON 对象将包含 Secret 名称作为字段,并将 Secret 和值的映射作为字段值。
多个密钥键值对进行响应(如Kubernetes):
curl http://localhost:3500/v1.0/secrets/kubernetes/bulk
{
"secret1": {
"key1": "value1",
"key2": "value2"
},
"secret2": {
"key3": "value3",
"key4": "value4"
}
}
响应码
代码 | 说明 |
---|---|
200 | OK |
400 | Secret store 丢失或配置错误 |
403 | 拒绝访问 |
500 | 未能获取 Secret 或未定义 secret store |
示例
curl http://localhost:3500/v1.0/secrets/vault/bulk
{
"key1": {
"key1": "value1"
},
"key2": {
"key2": "value2"
}
}
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.