CLI 설치
stable 채널을 사용하면 항상 최신 안정 버전이 설치됩니다. 재실행하면 자동으로 새 버전으로 갱신됩니다.
- macOS / Linux / AWS CloudShell
- Windows (CMD / PowerShell)

지원 리전
현재 ap-northeast-2 (서울) 리전만 지원합니다.사전 요구사항
시작하기 전에 아래 네 가지를 준비하세요.1. AWS Marketplace 구독
AWS Marketplace에서 제품을 구독해야 합니다. 구독이 없으면 설치 시 “구독이 확인되지 않았습니다” 에러가 발생합니다. 구독 문의: mp_support@bsgglobal.com2. AWS 인증
배포 대상 AWS 계정에 AdministratorAccess 권한으로 인증되어 있어야 합니다.3. Terraform Cloud 토큰
app.terraform.io에서 API 토큰을 발급받으세요.
설치 시
terraform login 토큰이 감지되면, 해당 토큰을 사용할지 직접 입력할지 선택할 수 있습니다.
4. 스캔 대상 계정 Credential
스캔할 AWS 계정마다 IAM Access Key가 필요합니다. 설치 과정에서 입력합니다. 대상 계정에서 사전 준비:- IAM 콘솔에서 사용자를 생성합니다
- IAMFullAccess 정책을 연결합니다 (ScanRole 자동 생성에 필요)
- Access Key를 발급받아 메모해둡니다
ScanRole(읽기 전용)이 자동 생성된 후에는 Access Key 대신 ScanRole로 스캔합니다.
Access Key는 최초 ScanRole 생성에만 사용되므로, ScanRole 생성 완료 후 IAM 사용자를 삭제해도 됩니다.
빠른 시작
Step 1. 설치


- CloudFormation 스택 생성 (Bootstrap 인프라)
- Bootstrap 실행 (OIDC Provider, TFC Run Role, S3 버킷, QuickSight 구독 자동 생성)
- Bootstrap 완료 후 임시 리소스(EC2, VPC 등) 자동 정리
- Terraform Cloud workspace 생성 확인
- Terraform Apply (Lambda, Step Functions, Glue, Athena, QuickSight 대시보드 등 42개 리소스)

Step 2. Credential 입력
배포 완료 후 각 대상 계정의 IAM Access Key를 입력합니다.
Credential 설정이 완료되면 Apply가 진행되고, 스캔 실행 여부를 물어봅니다.
설치 중 Credential 입력을 건너뛰면 나중에
isms-p target auth <account_id>로 설정할 수 있습니다.
Credential이 설정되지 않은 계정은 스캔이 실행되지 않습니다.Step 3. 설치 완료

- QuickSight Admin 자동 등록: 설치를 실행한 AWS IAM 사용자/역할이 QuickSight ADMIN으로 자동 등록됩니다. 별도의 QuickSight 사용자 설정이 필요 없습니다.
- 대시보드 URL 안내: 설치 완료 메시지에 QuickSight 대시보드 URL과 포털(뷰어 SPA) URL이 함께 표시됩니다.
- 관리자 콘솔 자동 활성화: 설치 시 입력한 관리자 이메일이 Cognito admin 그룹에 자동으로 등록되어, 포털 로그인 후 관리자 콘솔(
/admin)에 접근할 수 있습니다.
접근 경로 두 가지
다른 사용자에게 대시보드 공유
다른 사용자에게 대시보드 공유
- 포털 (권장): 추가 사용자가 포털에 직접 가입하면 자동으로 뷰어 그룹에 할당됩니다 (허용 도메인 설정 시 그 도메인 이메일만 가능). AWS 권한이 필요 없습니다.
- QuickSight 콘솔 직접 접속: AWS QuickSight 콘솔에서 사용자를 초대하고 대시보드에 권한을 부여합니다.
- AWS 콘솔 > QuickSight > 사용자 관리
- 사용자 초대 (이메일 주소 입력)
- 대시보드에서 공유 설정
Step 4. 상태 확인

업데이트
업데이트는 두 가지 경로로 처리됩니다.1. 자동 반영 (사용자 작업 불필요)
설치된 환경은 제품 릴리스 채널(Stable)을 추적합니다. 신규 버전이 릴리스되면 다음 항목이 다음 자동 apply 시 고객 환경에 자동으로 반영됩니다.- 스캔 로직 (Lambda 컨테이너 이미지)
- Terraform 모듈 (Step Functions, Glue, Athena, QuickSight 등)
- TFC Run Role IAM 정책 (core / analytics)
- 대시보드 정의 (QuickSight)
release/stable)에 push되는 시점에 Terraform Cloud가 자동으로 plan/apply를 실행합니다.
자동 반영을 즉시 트리거하고 싶을 때는 Terraform Cloud 콘솔에서 해당 workspace의 Actions > Start new run을 실행하면 됩니다.
2. 재설치 (Bootstrap 변경 시)
Bootstrap(CloudFormation 템플릿, OIDC/Role 구성, TFC 변수 스키마 등)이 변경된 메이저 업데이트는 자동 반영되지 않으며, 최신 CLI를 다운로드한 뒤 기존 환경을 제거하고 새로 설치해야 합니다. Step 1. 최신 CLI 다운로드 — 위 CLI 설치 명령어를 다시 실행하면 새 버전으로 갱신됩니다. Step 2. 제거 후 재설치isms-p install만 실행해도 기존 설치를 자동으로 감지하여 “제거 후 재설치” 옵션을 제공합니다.
재설치 시 설정 파일(
~/.isms-p-dashboard/config.yaml)은 보존되어 이전 입력값(TFC 조직, 관리자 이메일, 대상 계정 등)을 재사용할 수 있습니다.재설치가 필요한지 어떻게 알 수 있나요?현재 자동 고지 채널은 운영되지 않고 있습니다. 재설치 필요 여부가 의심되면 mp_support@bsgglobal.com으로 문의하세요.
제거
더 이상 사용하지 않을 때 전체 인프라를 제거합니다.
- Terraform destroy — Lambda, Step Functions, Glue, Athena, QuickSight 대시보드 등 모든 Terraform 리소스 삭제
- TFC Workspace 삭제
- Bootstrap 리소스 정리 — TFC Run Role, Bootstrap Role, OIDC Provider
- S3 Data Lake 삭제 여부 확인 (스캔 이력 데이터)
- QuickSight 구독 해지 여부 확인 (월정액)
S3와 QuickSight는 왜 선택인가요?
S3와 QuickSight는 왜 선택인가요?
- S3 Data Lake: 과거 스캔 이력은 감사 증적/컴플라이언스 증빙으로 가치가 있을 수 있습니다. 삭제하면 복구할 수 없습니다.
- QuickSight 구독: 월정액 과금(Enterprise $18/user/month)이 발생하지만, 다른 용도로 이미 사용 중일 수 있어 고객 판단에 맡깁니다.
재설치해도 문제없나요?
재설치해도 문제없나요?
isms-p uninstall 후 isms-p install로 재설치할 수 있습니다.
설정 파일(~/.isms-p-dashboard/config.yaml)은 보존되어 이전 설정을 재사용할 수 있습니다.- S3 Data Lake: 재설치 시 항상 새 버킷이 생성됩니다. 기존 버킷을 남겨두어도 자동으로 연결되지 않으므로, 과거 데이터를 유지하려면 새 버킷으로 직접 복사해야 합니다.
- QuickSight 구독을 남겨둔 경우: 기존 구독을 사용하여 대시보드만 재생성합니다.
- QuickSight 구독을 해지한 경우: 구독부터 새로 생성합니다.
CLI 없이 콘솔에서 제거하는 경우
CLI 없이 콘솔에서 제거하는 경우
TFC 콘솔과 AWS 콘솔에서 직접 제거할 수도 있습니다.1단계: Terraform destroy (TFC 콘솔)4단계: S3 / QuickSight (선택)
- app.terraform.io에 로그인
- 해당 workspace의 Settings > Destruction and Deletion
- “Queue destroy plan” 실행
- Plan 확인 후 Apply
- 같은 Settings > Destruction and Deletion
- “Delete from HCP Terraform” 실행
Bootstrap 리소스를 삭제하지 않아도 재설치에 문제는 없습니다.
CLI는 재설치 시 잔류 Bootstrap 리소스를 자동으로 감지하고 정리한 후 진행합니다.