앞선 게시물로 Vault 배포 및 활성화 방법에 대해서 알아보았다.
설치하였으면 이제 사용해보아야하며, 본 게시물에서는 Vault 사용방법에 대해 알아보자!
Vault 사용 방법
Vault를 배포하고 접속하게 되면 아래와 같이 접속 화면을 볼 수 있다.
Method를 선택해보면 Okta등의 다양한 접속 방법이 있고, 필자는 Root Token으로 접속하므로 Token으로 접속을 한다.
Vault는 Role + Policy + Secrets의 조합으로 사용할 수 있다.
즉, Vault 사용을 위한 Role을 만들고/해당 Role에서 Secrets 접근통제를 해야하므로 Policy를 생성하고, 해당 Role에서 사용할 Secrets를 만들면 된다.
Vault Role 생성
필자는 K8s에서 사용하기 때문에 Role > kubernetes에서 Create를 한다.
Role 생성에 필요한 정보는 Vault Name, Service account, Namespace이다.
넣는 정보만 봐도 알 수 있듯이 Vault는 특정 Service account + Namespace로 제한을 할 수 있다.
- Vault Name만 아는 상태에서 아무나 사용할 수 없도록..
SA와 NS는 AND로 동작하고 * 또는 , 로 값을 여러개 넣을 수 있으므로 필요에 따라서 설정을 하면 된다.
Vault Policy 생성
위에서 Role을 만들었다면, 해당 Role이 사용할 Policy를 만들어야 한다.
아래와 같이 설정하면 /test/test/*의 Secrets을 확인할 수 있는 Role이 만들어진다.
- test 중간에 data가 들어가있으나, 이는 Vault Policy Template인것 같다.
Vault Role + Policy 설정
생성한 Role에서 Edit을 선택하고, Tokens 버튼을 누르면 Vault Policy를 연결할 수 있다.
Vault Secrets 생성
Vault Secrets을 생성하는 단계이다. 일반 비밀정보를 뜻하는 KV로 선택하면 된다.
그리고 KV 외에도 다양한 엔진이 존재하나, 필자는 KV만 사용해봐서 KV에 대해서만 기술할 예정이다.
위 test role에 연결한 Policy에서 test/data/test로 Policy를 생성하였기 때문에 엔진 경로를 test로 설정을 했다.
그리고 이제 실제로 비밀정보를 입력하는 단계이다.
위에서 언급한것과 같이 test/data/test로 설정하였기 때문에 Path 정보를 다시 한번 test로 기입을 한다. 그리고 실제 비밀정보를 아래 Secret data에 넣으면 된다. 기본적으로는 마스킹처리 되어 있으나 우측 아이콘을 클릭하면 마스킹을 해제하여 볼 수 있다.
그리고 Secret을 최종적으로 설정을 하면 아래와 같이 설정됨을 확인할 수 있다!!
지금까지는 EKS Cluster에 Vault를 배포하고, 서비스에서 사용할 Vault Role + Policy + Secrets을 설정하였다.
그럼 다음 게시물에서는 실제 서비스에서 사용하는 방법에 대해서 알아보도록 하자!!!
조금만 더하면 된다!!
끝
'기술 이모저모 > [Ops] Devops' 카테고리의 다른 글
[ArgoCD] CD Tool 도입개요 및 설치방법 (0) | 2023.05.13 |
---|---|
[Vault] Vault 서비스 사용 방법[2/2] (0) | 2023.04.30 |
[Vault] Vault Helm 배포 및 활성화 방법 (2) | 2023.04.30 |
[SLA] 서비스 안전성의 주요 지표 SLI, SAO + SLA (0) | 2023.04.02 |
[Karpenter] Karpenter vs Cluster AutoScaler 장/단점 비교 (0) | 2023.03.26 |