3.8 KiB
3.8 KiB
라이선스 관리자 매뉴얼 (최종본)
본 문서는 스마트 IMS(Smart IMS) 시스템의 라이선스 관리 기능을 사용하는 방법을 설명합니다. 모든 라이선스 관리는 RSA 비대칭 암호화 방식을 따르며, tools/license_manager.cjs CLI 도구를 통해 수행됩니다.
1. 사전 준비 및 구독자 설정 (중요)
라이선스 키를 활성화하기 전에 서버가 어떤 고객사(구독자)에게 속해 있는지 식별하기 위해 구독자 ID를 설정해야 합니다.
- 웹 관리자 페이지 접속: 상단 메뉴의
라이선스 관리섹션으로 이동합니다. - 서버 환경 설정:
- 부여받은
구독자 ID(예:SAMSUNG,TEST_SUB)를 입력하고 **[설정 저장]**을 클릭합니다. - 주의: 라이선스 키 발급 시 사용한 구독자 ID와 서버에 설정된 ID가 일치해야만 활성화가 가능합니다.
- 부여받은
2. 기본 명령어 (CLI 사용법)
모든 명령은 프로젝트 루트 경로에서 node를 사용하여 실행합니다.
2.1. 라이선스 발급 (generate) - 제공자 전용
새로운 RSA 서명 방식의 라이선스 키를 생성합니다. 이 작업에는 tools/keys/private_key.pem이 필요합니다.
# 기본 발급 (30일 데모용)
node tools/license_manager.cjs generate monitoring demo --subscriber TEST_SUB
# 발급 및 즉시 활성화 (로컬 테스트용)
node tools/license_manager.cjs generate asset sub --subscriber SAMSUNG --activate
# 만기일 직접 지정 발급
node tools/license_manager.cjs generate production sub --subscriber SAMSUNG --expiry 2026-12-31
# 시한부 발급 (지정된 일수 내에 활성화하지 않으면 만료됨)
node tools/license_manager.cjs generate monitoring sub --subscriber TEST_SUB --activation-window 3
- 모듈:
asset,production,monitoring - 유형:
dev(무제한),sub(구독형),demo(30일 체험)
2.2. 라이선스 검증 및 해독 (decode)
키를 활성화하기 전에 내용을 검증하거나, 서명 변조 여부를 확인합니다.
node tools/license_manager.cjs decode <라이선스_키_문자열>
- Valid Signature : YES가 나오면 정품 키이며, NO가 나오면 변조되었거나 잘못된 키입니다.
2.3. 현황 조회 및 상세 정보 (list, show)
# 전체 모듈 활성화 상태 및 최근 발급 이력 조회
node tools/license_manager.cjs list
# 특정 발급 ID나 모듈의 상세 정보 확인
node tools/license_manager.cjs show 5
node tools/license_manager.cjs show monitoring
2.4. 수동 활성화 및 삭제 (activate, delete)
# 발급받은 키를 서버에 적용 (웹 UI에서도 가능)
node tools/license_manager.cjs activate <라이선스_키_문자열>
# 특정 모듈 비활성화 (기존 키는 삭제되지 않고 이력으로 이동)
node tools/license_manager.cjs delete asset
3. 보안 및 배포 가이드
보안 강화를 위해 반드시 다음 사항을 준수하십시오.
3.1. 개인키와 공개키의 분리
- private_key.pem (제공자): 라이선스를 만드는 "인감"입니다. 절대로 고객사에 배포하지 마십시오.
tools/폴더 자체를 배포에서 제외하는 것을 권장합니다. - public_key.pem (서버): 라이선스가 진짜인지 확인하는 "인감 증명"입니다. 서버의
server/public_key.pem경로에 반드시 위치해야 합니다.
3.2. 영구 보관 및 이력
- 새로운 키로 교체될 때마다 기존 키 정보는 데이터베이스의
license_history테이블에 자동으로 보관됩니다. (웹 UI에서 '변경 이력' 버튼으로 확인 가능)
마지막 업데이트: 2026-01-22 (RSA 비대칭 암호화 및 구독자 기반 관리 적용)