키/값 데이터 영구 삭제(Destroy)
키/값 데이터 영구 삭제(Destroy)
표준 vault kv delete 명령은 소프트 삭제를 수행해요. CLI나 GUI를 사용해 데이터를 영구 삭제(destroy)하면 Vault가 기반 데이터를 제거하고 destroyed 메타데이터 필드를 true로 설정해요.
전제 조건(Assumptions)
kvv2 플러그인을 설정했어요.- 인증 토큰에
kvv2 플러그인에 대한create와update권한이 있어요.
출처: 문서
본문
CLI
-versions 플래그와 함께 vault kv destroy를 사용해 키/값 데이터의 하나 이상 버전을 영구 삭제해요.
$ vault kv destroy \
-mount <mount_path> \
-versions <target_versions> \
<secret_path>
예를 들어:
$ vault kv destroy -mount shared -versions 2,3 dev/square-api
Success! Data written to: shared/destroy/dev/square-api
이제 버전 2와 3의 destroyed 메타데이터 필드는 true예요.
$ vault kv metadata get -mount shared dev/square-api
======== Metadata Path ========
shared/metadata/dev/square-api
========== Metadata ==========
Key Value
--- -----
cas_required false
created_time 2024-11-13T21:51:50.898782695Z
current_version 4
custom_metadata <nil>
delete_version_after 0s
max_versions 5
oldest_version 0
updated_time 2024-11-14T22:32:42.29534643Z
...
====== Version 2 ======
Key Value
--- -----
created_time 2024-11-13T21:52:10.326204209Z
deletion_time n/a
destroyed true
====== Version 3 ======
Key Value
--- -----
created_time 2024-11-13T21:58:32.128442898Z
deletion_time n/a
destroyed true
GUI
Vault GUI에서 해당 시크릿 경로의 Secret 탭을 열고, 영구 삭제할 버전을 선택한 뒤 destroy 동작을 수행할 수도 있어요.
API
/{plugin_mount_path}/destroy/{secret_path}에 POST 호출을 보내 데이터 버전을 영구 삭제할 수 있어요. versions 요청 파라미터에 대상 버전을 콤마로 구분해 지정해요.
더 알아보기 (Learn more)
- kv v2 플러그인 설정 방법을 살펴보세요.
- 소프트 삭제(delete)와 소프트 삭제 복원(undelete) 방법을 확인해 보세요.
- KV v2 플러그인 API 문서에서 destroy 엔드포인트를 확인해 보세요.