vault 를 사용하면 프로젝트에 사용하는 인증키 , 비밀번호 같은 정보를 관리할 수 있다.
정리가 잘 되어있는 블로그
64비트 운영체제 -> amd 64
마우스 우클릭 - 터미널에서 열기
를 눌러서 실행한다.
우클릭 시 터미널에서 열기가 바로 안나타날땐, 두세번 더 시도하면 나타남
.\vault server -dev
마지막 부분에 Unseal Key
, Root Token
정보가 나오는데 중요하다고 하니 잊어버리지 않게 잘 저장해두어야 겠다!
나의 경우 클립보드에 나사 박아두는 편 ㅋㅋ
📍 클립보드에 나사 박아두는 방법
- 기억하고싶은 텍스트 및 이미지를 복사
윈도우키
+.
입력 후
나타나는 창에서 맨 오른쪽 아이콘 클릭 후 , 고정하고 싶은 정보는 우측 하단의 압정 아이콘을 눌러준다
압정 아이콘이 하얗게 되면 고정 된 것임.
이렇게 되면 고정을 풀어줄 때 까지 이곳에 남아있게 된다.
powershell 기준 새 터미널에서 아래 정보를 입력하여 환경변수 등록!
$env:VAULT_ADDR="http://127.0.0.1:8200"
./vault status
등록 명령어 형태
./vault kv put secret/{KEY} {field}={value}
음..
key 를 alias 로 , field 를 key 로, value 를 value 로 생각해본다면 좀 더 쉽게 와닿을것 같다!
만약 오타를 입력했거나 키 이름을 다시 작성해주기 위해 등록된 키의 삭제가 필요하다면
./vault kv delete secret/{KEY}
./vault kv get secret/{KEY}
spring initializr 에서 vault 검색 후 등록
ext {
set('springCloudVersion', "2022.0.4")
}
dependencies {
implementation 'org.springframework.cloud:spring-cloud-starter-vault-config'
}
dependencyManagement {
imports {
mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
}
}
spring:
config:
import: vault://
cloud:
vault:
uri: http://localhost:8200
token: ${VAULT_TOKEN}
kv:
default-context: study-redis
default-context 값은
windows 터미널에서 비밀정보 입력할 때 secret/다음에 넣어준 {KEY} 를 입력하면 된다.
@Configuration
public class RedisConfiguration {
...
@Value("${REDIS-PASSWORD}")
private String password;
...
}