我如何从保险柜中批量删除过期的证书

时间:2018-09-21 02:50:51

标签: hashicorp-vault

我们的保管库中充斥着大量过期的证书。

虽然可以选择使用api或租约ID吊销证书,但它们仍然可用并且可以查询。

以下操作只会撤消证书,

$ curl \
    --header "X-Vault-Token: ..." \
    --request POST \
    --data @payload.json \
    http://127.0.0.1:8200/v1/pki/revoke

有没有办法永久删除过期的证书?

2 个答案:

答案 0 :(得分:1)

有一个endpoint

  

整洁

     

此端点允许通过删除已过期的证书来整理存储后端和/或CRL   并且已超过其到期时间的某个缓冲时间段。

因此,要删除所有过期的证书,请以POST为有效载荷向https://<vault-api-url>:<api-port>/v1/<pki-role>/tidy发出"tidy_cert_store": true请求,

使用cURL,

curl -X POST \
  https://<vault-api-url>:<api-port>/v1/<pki-role>/tidy \
  -H 'content-type: application/json' \
  -H 'x-vault-token: c32165c4-212f-2dc2e-cd9f-acf63bdce91c' \
  -d '{
    "tidy_cert_store": true
}'

答案 1 :(得分:0)

Sufiyan提供的语法似乎不正确(或对于旧版本)。在Vault> 1.2(可能更早)中,它应该是:

curl -X POST \
  -H "X-Vault-Token: $VAULT_TOKEN" \
  -d '{"tidy_cert_store":true}' \
  $VAULT_ADDR/v1/pki/tidy

应该使整洁的过程开始,并返回以下响应:

{
  "request_id": "",
  "lease_id": "",
  "renewable": false,
  "lease_duration": 0,
  "data": null,
  "wrap_info": null,
  "warnings": [
    "Tidy operation successfully started. Any information from the operation will be printed to Vault's server logs."
  ],
  "auth": null
}

最新的Tidy文档为https://www.vaultproject.io/api/secret/pki/index.html#tidy