HCP Waypoint 보안 모델
HCP Waypoint 보안 모델
이 문서는 HCP Waypoint의 보안 모델을 설명해요. HCP Waypoint 제품은 HCP 프리미티브 위에 직접 구축되므로, HCP의 보안 모델의 확장으로 볼 수 있어요.
팁: HCP 플랫폼에 대한 자세한 내용은 HCP 문서를 참고해 주세요.
출처: 문서
본문
핵심 개념
다음 정보는 HCP Waypoint에서 사용되는 핵심 개념과 용어를 정의해요.
템플릿과 애플리케이션
HCP Waypoint 템플릿은 플랫폼 엔지니어가 개발자를 위한 애플리케이션 스캐폴딩을 추상화하고 표준화할 수 있게 해 줘요. 개발자는 이러한 셀프서비스 템플릿을 사용해 애플리케이션을 생성하고 배포할 수 있어요. 이 템플릿은 Terraform 모듈로 뒷받침되며, 앱 개발자가 애플리케이션을 만들러 갈 때 HCP Terraform에서 프로비저닝돼요.
애드온
HCP Waypoint 애드온은 플랫폼 팀이 인프라 리소스를 Terraform 모듈로 정의하고, 이를 애플리케이션의 종속성으로 애플리케이션 개발자에게 제공할 수 있게 해 줘요. 개발자는 추가 종속성이 필요해질 때 플랫폼 팀이 설정해 둔 애드온을 선택하여 HCP Waypoint에서 관리하는 애플리케이션에 추가할 수 있어요.
액션
플랫폼 팀은 HCP Waypoint 액션을 사용해 빌드 승격, 롤백, 피처 플래그 수정 같은 day-two 운영을 위한 원버튼(push-button) 경험을 제공할 수 있어요. 플랫폼 팀은 템플릿에 액션을 할당할 수 있어서, 개발자가 해당 템플릿으로 애플리케이션을 만들면 그 액션들이 자동으로 애플리케이션에 할당돼요. 개발자에게는 플랫폼 팀이 설계한 이러한 셀프서비스 골든 워크플로우가 제공돼요. 또한 액션은 파라미터화할 수 있어서, 요청 헤더 같은 값에 보안 또는 인증 토큰을 정의해 요청을 성공적으로 보낼 수도 있고, 요청 파라미터로 액션과 함께 보내는 특정 값을 조정하는 데 사용할 수도 있어요.
에이전트
플랫폼 팀은 HashiCorp 설정 언어(HCL) 구성 파일을 사용하는 "agent" 유형의 액션을 만들 수 있어요. 이 구성 파일에는 개발자가 액션을 실행할 때 에이전트가 해야 할 일에 대한 액션 정의와 지침이 포함돼요. 개발자는 셀프서비스 agent 유형 액션을 사용해 프라이빗 환경에서 실행 중일 수 있는 작업을 트리거할 수 있어요.
페르소나
다음 정보는 핵심 사용자와 각 사용자의 HCP Waypoint 사용 방식을 정의해요.
플랫폼 엔지니어
플랫폼 엔지니어는 인프라를 만들고, HCP Terraform 모듈, git 저장소와 설정, CI/CD 설정을 포함하는 경우가 많은 템플릿, 애드온, 액션을 사용해 애플리케이션을 부트스트랩하는 것을 돕는 역할을 해요. 플랫폼 엔지니어는 애플리케이션 개발자가 애플리케이션을 배포할 수 있게 해 줘요.
애플리케이션 개발자
애플리케이션 개발자는 기반 인프라에 대한 전문 지식 없이도, 플랫폼 엔지니어가 만든 플랫폼 인프라와 템플릿을 활용하는 새 애플리케이션 또는 서비스를 만들어요.
아키텍처
일부 Waypoint 리소스와 데이터 소스는 HCP Terraform 프로바이더를 통해 관리되고 읽을 수 있어요. 특정 보안 권장사항을 포함한 인증에 대한 자세한 내용은 HCP Terraform 프로바이더 문서를 참고해 주세요.
마찬가지로 HCP CLI도 일부 Waypoint 리소스와 데이터를 관리할 수 있게 해 줘요. HCP CLI는 웹 브라우저 로그인 흐름 또는 Terraform Provider 같은 서비스 주체를 통한 비대화형 흐름을 지원해요. 자세한 내용은 HCP CLI 문서에서 확인할 수 있어요.
HCP Waypoint 아키텍처 개요 다이어그램
다음 다이어그램은 HCP Waypoint에서 데이터의 흐름을 보여 줘요.
위협 모델
HCP Waypoint는 플랫폼 팀이 개발자가 규모에 맞게 애플리케이션을 제공할 수 있는 골든 패턴과 워크플로우를 정의할 수 있도록 설계되었어요.
Waypoint와의 통신에 대한 기밀성과 무결성
클라이언트와 HCP Waypoint 사이의 모든 통신 및 HCP Waypoint와 HCP Terraform을 포함한 다른 HashiCorp 서비스 사이의 내부 통신은 모두 TLS로 암호화돼요.
저장 정보의 기밀성
HCP Terraform 토큰, Terraform 출력 변수, 그리고 sensitive로 표시된 액션에 사용되는 변수는 데이터베이스에 값을 저장하기 전에 Vault Transit을 사용해 암호화돼요. 자세한 내용은 transit secrets engine 문서를 참고해 주세요. 또한 데이터베이스 전체와 모든 데이터베이스 백업, 로그, 스냅샷은 저장 상태에서 암호화돼요.
데이터 접근과 수행되는 작업에 대한 인증·인가 정책 강제
HCP Waypoint는 UI, API, CLI 또는 Terraform Provider를 통해 수행되는 모든 작업에 대해 인가 검사를 강제해요. 사용자의 역할에 따라 특정 기능에 대한 접근을 제한할 수 있어요. HCP Waypoint 역할 기반 접근 제어에 대한 자세한 내용은 HCP Waypoint 문서를 참고해 주세요. HCP의 Identity and Access Management에 대한 자세한 내용은 HCP 문서를 참고해 주세요.
HCP Waypoint의 신뢰성과 가용성
HCP Waypoint 서비스는 안정성을 위해 여러 가용 영역에 걸쳐 분산되어 있어요. 또한 데이터베이스는 읽기 전용 복제본을 유지하며, 장애가 발생하면 주(primary)가 자동으로 이 복제본으로 장애 조치해요.
또한 HCP Waypoint 데이터베이스의 정기 백업을 수행하여 데이터 손실 위험을 완화하고 장애 발생 시 복구를 준비해요.
HCP Terraform 위협 모델 제외 사항
HCP Waypoint는 HCP Terraform과 본질적으로 통합되기 때문에, HCP Terraform에 대해 고려되는 위협 모델이 HCP Waypoint에도 적용돼요. 사용자는 HCP Terraform 아키텍처 세부 정보의 위협 모델과 제외 사항을 숙지해야 해요.
안전한 사용을 위한 권장사항
HCP Waypoint를 안전하게 운영하기 위해 다음 모범 사례를 권장해요.
모든 HCP Terraform 보안 권장사항 준수
사용자는 HCP Terraform 모범 사례를 따르는지 확인해야 해요. 이러한 권장사항은 HCP Terraform 보안 모델을 참조해 주세요.
모든 HCP 보안 권장사항 준수
사용자는 모든 HCP 모범 사례를 따르는지 확인해야 해요. 이러한 권장사항은 HCP 보안 개요를 참조해 주세요.
강력한 인증 강제
HCP는 SMS 또는 TOTP를 통한 이중 인증을 지원해요. 조직 관리자는 조직에 대해 SSO를 구성할 수도 있어요.
최소 권한의 HCP Terraform 토큰 생성
HCP Waypoint를 HCP Terraform에 연결하는 데 사용할 토큰을 생성할 때, 해당 토큰이 조직 구성원이 필요한 HCP Terraform 프로젝트에만 접근하도록 필요한 최소 권한만 부여하도록 해야 해요. 과도하게 권한이 많은 토큰은 멤버에게 프라이빗 Terraform 모듈 보기나 관리 같은 의도하지 않은 권한을 부여할 수 있으므로 피해야 해요. 자세한 내용은 HCP Terraform 토큰 권한을 참고해 주세요.