키/값 v2에서 최대 데이터 버전 설정하기
키/값 v2에서 최대 데이터 버전 설정하기
kv v2 시크릿 경로의 활성 버전 수를 제한해서, Vault가 오래된 데이터 버전을 자동으로 영구 삭제(destroy)하도록 해요.
전제 조건(Assumptions)
kvv2 플러그인을 설정했어요.- 인증 토큰에
kvv2 플러그인에 대한create와update권한이 있어요.
출처: 문서
본문
CLI
vault kv metadata put을 사용해 kv 마운트 경로에 허용되는 최대 버전 수를 변경해요.
$ vault kv metadata put \
-max-versions <max_versions> \
-mount <mount_path> \
<secret_path>
예를 들어:
$ vault kv metadata put \
-max-versions 5 \
-mount shared \
dev/square-api
Success! Data written to: shared/metadata/dev/square-api
이제 버전 수가 5를 초과하면 Vault가 데이터를 자동으로 삭제해요.
$ 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 9
custom_metadata <nil>
delete_version_after 0s
max_versions 5
oldest_version 5
updated_time 2024-11-15T03:10:26.749233814Z
max_versions 값을 5로 설정하면 버전 1~4가 자동으로 제거돼 oldest_version이 5가 되는 모습을 확인할 수 있어요.
GUI
Vault GUI에서 시크릿 경로의 Metadata 탭을 열고, Max versions 값을 설정해 저장하면 같은 동작을 수행할 수 있어요.
API
/{plugin_mount_path}/metadata/{secret_path}에 POST 호출을 보내 max_versions 필드를 설정할 수 있어요.
더 알아보기 (Learn more)
- kv v2 플러그인 설정 방법을 살펴보세요.
- KV v2 플러그인 API 문서에서 metadata 엔드포인트를 확인해 보세요.