반응형
vault를 통해서 암호화 정보를 관리할 수 있다
Vault를 통해서 정보를 저장하고, 저장한 정보를 받아 볼 수 있기까지의 명령어를 정리
http://localhost:8200/ui/vault
⇒ 아래 설명은 cli명령어가 아닌 ui를 통해서도 동일하게 적용 가능하다
1. Vault서버에 Root 계정으로 로그인하기
- vault 를 최초 실행 할 경우 root token을 확인 할 수 있다.
- 해당 정보는 다시 발급 및 재확인이 불가능하므로, 고정된 token을 사용하지 않을 경우 필히 저장 해두는 것을 추천
vault login hvs.RootToken~~~~~
2. Vault 에서 사용할 path 활성화하기
vault secrets enable -path={사용할 path} -description="{저장소 설명}" {저장소 형태}
vault secrets enable -path=aaa -description="triple a" kv-v2
vault secrets enable -path=aaa -description="triple a" kv // 버전 설정 가능
- kv 버전2
- kv버전2에서는 version1에 비해서 메타정보, 버전관리, 값 패치 등의 더 많은 기능을 제공한다.
2-1 데이터 저장
vault kv put {path}/{저장소_명칭} {저장할 정보}
vault kv put aaa/test id="admin" pw="password"
3. vault 정책설정파일 생성 ⇒ HCL(HashiCorp Configuration Language) 파일
vi aaa_read_policy.hcl
path "aaa/*" {
capabilities = ["read"]
}
- create, read, update, delete, list 중에 원하는 기능을 선택한다. 어떤 path에 대해 허용할지에 관한 정책을 작성한다.
3-1. vault 정책 생성
vault policy write {policy_name} {3번에서 생성한 정책 설정 파일}
vault policy write aaa_oracle_read ./aaa_read_policy.hcl
- aaa_read 라는 이름의 정책을 생성
3-2 정책 확인
vault policy read aaa_oracle_read
- 해당 명령어를 통해서 확인 가능
4. 위에서 생성한 권한을 가진 Vault Token생성
vault token create -policy={적용할 정책 명}
vault token create -policy=aaa_read
================================================
Key Value
--- -----
token hvs.aaa_read_token~~~~~
token_accessor 5gxrJMFkHK6jtoVMsmBP6Ert
token_duration 768h
token_renewable true
token_policies ["aaa_read" "default"]
identity_policies []
policies ["aaa_read" "default"]
- 이렇게 aaa_read의 policy를 가진 Token이 생성되었다.
- 해당 토큰은 768시간동안 유효하며, 기본적으로 default policy를 가지고 있고, aaa_read policy도 갖게 된다.
- 위에서 보았듯, 해당 토큰은 aaa라는 path에 대해 read권한만을 갖고 있을 것이다.
해당 토큰을 테스트 해보기 위해선 해당 토큰으로 로그인 후 테스트 가능
unset VAULT_TOKEN
- 해당 명령어를 통해 기존 사용중인 token 로그아웃 가능
5. Vault 데이터 조회
vault kv get {path/secret_name}
vault kv get aaa/test
반응형
'ETC' 카테고리의 다른 글
Server gave HTTP response to HTTPS client~~ 에러 발생 (0) | 2024.03.27 |
---|---|
vault approle 활용하여 정보 가져오기 (0) | 2024.03.27 |
종속성 구성(implementation, compileOnly, runtimeOnly) (0) | 2023.08.16 |
NUXT Error: Cannot find module 'node:fs' (3) | 2023.05.09 |
Decoupled Architecture - 백엔드와 프론트엔드의 분리 (0) | 2023.04.11 |