vault plugin secrets qdrant
v0.1.0
vault-plugin-secrets-qdrant是一个Hashicorp Vault插件,可为JWT Auth的QDRANT扩展带有秘密引擎的库。
它能够生成具有粒状访问控制的QDRANT凭据/JWT签名令牌。
这些角色存储在金库中,可以随时撤销。
生成的JWT代币是短暂的,无状态的。它们没有存储在保险库中,但可以绑定到角色并在删除角色时无效。
该插件还能够创建/更新/删除角色数据到QDRANT服务器
Qdrant Secrets引擎动态生成JWT凭据。
该插件支持多个资源,包括:配置,角色和JWT。
请阅读官方的QDRANT文档,以了解令牌和访问的概念以及身份验证过程。
可以在保险库插件中定义装满资源的手:
类型config的资源代表秘密的数据库实例配置。
| 实体路径 | 描述 | 运营 |
|---|---|---|
| qdrant/config | 列表实例 | 列表 |
| qdrant/config/ | 管理实例配置 | 写,阅读,删除 |
类型role的资源代表秘密的数据库角色配置。
| 实体路径 | 描述 | 运营 |
|---|---|---|
| QDRANT/角色/ | 列出角色 | 列表 |
| QDRANT/角色// | 管理实例角色配置 | 写,阅读,删除 |
jwt类型的资源代表数据库JWT令牌。
| 实体路径 | 描述 | 运营 |
|---|---|---|
| qdrant/jwt // | 产生代币的角色 | 读 |
有一些参数可以传递到config/ (数据库实例), role/路径。
| 钥匙 | 类型 | 必需的 | 例子 | 描述 |
|---|---|---|---|---|
| URL | 布尔 | 真的 | QDRANT:6334 | QDRANT实例的URL地址(GRPC协议) |
| sig_key | 细绳 | 真的 | 秘密钥匙 | 签名和验证(API-KEY服务器)令牌的秘密键。 |
| sig_alg | 细绳 | 真的 | HS256 | 算法解码令牌。 |
| JWT_TTL | 细绳 | 真的 | 300s | 默认TTL例如令牌(可以以角色覆盖) |
| TLS | 布尔 | 错误的 | 真的 | 如果设置为true -Vault将打开TLS GRPC连接到QDRANT |
| CA | 细绳 | 错误的 | eyjhbgc ... | base64 tls编码的自定义CA证书 |
注意:删除实例配置时,所有关联的角色将自动从qdrant实例中删除。
| 钥匙 | 类型 | 必需的 | 例子 | 描述 |
|---|---|---|---|---|
| JWT_TTL | 细绳 | 错误的 | 300s | ttl例如令牌 |
| 主张 | JSON | 真的 | 访问和过滤器属性(请参阅QDRANT文档) |
注意:Vault角色与QDRANT实例集合sys_roles自动同步
claims示例
{
"claims":{
"value_exists": {
"collection": "sys_roles",
"matches": [
{ "key": "role", "value": "write2" }
]
},
"access": [
{
"collection": "my_collection",
"access": "r"
}
]
}
}
为了使用此插件,您需要向Vault注册它。配置您的Vault服务器以具有有效的plugins_directory配置。
注意:您可能需要将api_addr设置为收听地址,并在vault配置中将disable_mlock为true ,以便能够使用该插件。
从发布页面下载最新的稳定版本,然后将其放入Vault Server的plugins_directory中。
要使用Vault插件,您需要插件的SHA256总和。
示例如何注册插件:
SHA256SUM=$(sha256sum vault-plugin-secrets-qdrant | cut -d' ' -f1)
vault plugin register -sha256 ${SHA256SUM} secret vault-plugin-secrets-qdrant
vault secrets enable -path=qdrant vault-plugin-secrets-qdrant注意:如果使用自签名证书,则可以使用-tls-skip-verify标志。
$ make $ make setup-env$ make tests$ make e2e$ make teardown-env$ make clean非常欢迎代码贡献。
git checkout -b AmazingFeature )git push origin AmazingFeature入分支main分支的拉动请求。