Azure Key Vault를 사용하여 비밀 저장 및 관리
Azure Key Vault
- 하나의 중앙 위치에 애플리케이션 비밀을 저장하는 중앙 집중식 클라우드 서비스
- 액세스 제어 및 로깅 기능을 제공하여 중요한 정보에 대한 보안 액세스 제공
- deploy 되는 과정에서 administrative credential이 발각 되는 것을 막을 수 있음. 관리 자격 증명 암호화
Azure Key Vault의 기능
- 비밀 관리
Key Vault를 사용하여 토큰, 암호, 인증서, API 키, 기타 비밀을 안전하게 저장하고 액세스를 엄격히 제어할 수 있습니다.
- 암호화 키 관리
Key Vault를 키 관리 솔루션으로 사용할 수 있습니다. Key Vault를 사용하면 데이터를 암호화하는 데 사용되는 암호화 키를 더 쉽게 만들고 제어할 수 있습니다.
- SSL/TLS 인증서 관리
Key Vault를 사용하면 Azure 리소스 및 내부 리소스에 둘 다 사용할 퍼블릭 및 프라이빗 SSL/TLS(Secure Sockets Layer/전송 계층 보안) 인증서를 프로비저닝, 관리 및 배포할 수 있습니다.
- HSM(하드웨어 보안 모듈)에서 지원되는 비밀 저장.
해당 비밀과 키는 소프트웨어 또는 FIPS 140-2 Level 2 검증을 받은 HSM을 통해 보호할 수 있습니다.
Azure Key Vault의 이점
- 애플리케이션 비밀 중앙 집중화
애플리케이션 비밀 스토리지를 중앙 집중화하면 배포를 제어하고 비밀이 실수로 누출될 가능성을 줄일 수 있습니다.
- 안전하게 비밀 및 키 저장
Azure는 업계 표준 알고리즘, 키 길이 및 HSM을 사용합니다. Key Vault에 액세스하려면 적절한 인증 및 권한 부여가 필요합니다.
- 액세스 모니터링 및 액세스 제어
Key Vault를 사용하여 애플리케이션 비밀에 대한 액세스를 모니터링하고 제어할 수 있습니다.
- 애플리케이션 비밀의 관리 간소화
Key Vault를 사용하면 공용 CA(인증 기관)의 인증서를 간단하게 등록하고 갱신할 수 있습니다. 또한 Azure 지역 내에서 콘텐츠를 스케일 업 및 복제하고 표준 인증서 관리 도구를 사용할 수 있습니다.
- 다른 Azure 서비스와 통합
스토리지 계정, 컨테이너 레지스트리, 이벤트 허브, 기타 여러 Azure 서비스를 Key Vault와 통합할 수 있습니다. 해당 서비스는 Key Vault에 저장된 비밀을 안전하게 참조할 수 있습니다.
Azure Key Vault에서 암호 관리
Key Vault에서 비밀을 추가하고 읽는 방법
- Azure Portal
- Azure CLI 또는 Azure PowerShell
- Azure Portal을 사용하여 Key Vault를 생성
- 포털 및 Azure Cloud Shell의 Azure CLI에서 비밀에 액세스
- Azure CLI: 명령줄 또는 스크립트에서 Azure 리소스를 사용하는 방법
- Cloud Shell: Azure 리소스를 관리 및 개발하기 위한 브라우저 기반 쉘 환경 (클라우드에서 실행되는 대화형 콘솔)
키 자격 증명 모음(Key Vault)을 설치, 배포 후 나타나는 자격증명 모음 URI: 애플리케이션이 REST API에서 자격 증명 모음에 액세스하는 데 사용할 수 있는 URI
설정의 비밀 메뉴에서 암호 추가 가능
암호 확인 방법 2가지
1. Portal
비밀 창 - MyPassword 선택(암호 이름) - 현재 버전 선택 - 비밀 식별자 필드 확인 - 비밀 값 표시 선택 ⇒ 이 버전의 암호에 대한 교유 값 확인 가능
이 필드는 애플리케이션을 통해 비밀에 액세스하는데 사용할 수 있는 URI
2. Cloud Shell
az keyvault secret show \
--name MyPassword \
--vault-name my-keyvault-JHQ \
--query value \
--output tsv