감사 로그
gShare 내에서 발생하는 권한, 과금, 세션, 시스템 자원의 모든 변경 사항은 변경 불가능한(Immutable) 감사 로그에 수집·기록됩니다. 작업 일시, 행위자(Actor), 수행 액션(Action), 작업 대상(Target), 수행 결과 및 변경 전후의 상세 데이터 상태를 확인할 수 있습니다.

권한 수준에 따른 감사 로그 조회 범위는 다음과 같이 격리됩니다.
- 조직 관리자: 소속 조직 내의 감사 로그만 조회
- 부서 관리자: 소속 부서 내의 감사 로그만 조회
- 시스템 관리자: 플랫폼 전체의 감사 로그 조회
테넌트 격리: 모든 접근 권한 필터링은 프론트엔드가 아닌 API 백엔드 DB 쿼리 레벨에서 적용되므로, 타 테넌트의 행위 로그가 노출되지 않습니다.
조회 필터
| 필터 항목 | 설명 및 활용 예시 |
|---|---|
| 행위자 (Actor) | 작업자 이름 또는 이메일 계정 (특정 사용자의 전체 수행 작업 추적) |
| 액션 (Action) | session.force_terminate, credit.allocate, membership.update, user.set_global_role 등 특정 작업 유형 |
| 결과 (Result) | 성공(success) 또는 거부(access.denied). 접근 거부 발생 건도 로그로 수집됨 |
| 대상 ID (Target ID) | 작업을 적용받은 대상 리소스 ID (특정 세션, 지갑, 사용자 계정 등) |
| 기간 (Time Range) | 최근 1시간, 24시간, 1주일, 30일 또는 사용자 지정 날짜/시간 범위 |
설정한 필터 조건은 브라우저 URL 쿼리 파라미터에 실시간 반영되어, 해당 URL을 공유하여 다른 관리자에게 동일한 감사 로그 검색 결과를 전달할 수 있습니다.
항목 상세 조회 및 Diff 보기

감사 로그 목록에서 해당 행을 클릭하면 상세 변경 내역을 확인할 수 있습니다.
- 특정 리소스 식별자(ID) 및 연관 개체 정보
- 상태 변경 작업인 경우 변경 전(Before) → 변경 후(After) 필드별 데이터 비교(Diff) 제공 (예: 역할 변경 시 기존/신규 역할, 자원 정책 수정 시 변경된 모든 필드 항목 표시)
내보내기 (CSV Export)
CSV 내보내기 기능은 현재 설정된 조회 범위 및 필터 조건에 해당하는 모든 페이지의 감사 로그 항목을 Excel에서 바로 한글이 깨지지 않는 UTF-8 (BOM) 인코딩 파일로 다운로드합니다.
- 포함 필드: 발생 일시, 행위자, 액션, 결과, 대상 ID, 조직, 부서, JSON 형태의 상세 메타데이터
- 내보내기 감사 기록: 내보내기 실행 작업 자체도 감사 로그(
audit.export, 적용된 필터 조건 및 다운로드 행 수 포함)로 기록되어 외부 데이터 유출 행위를 추적합니다.
감사 로그 수집 대상 이벤트
플랫폼에서 수집되는 대표적인 감사 이벤트 목록은 다음과 같습니다.
- 계정 및 인증: 로그인 성공/실패, 비밀번호 변경 및 초기화, 역할 및 소속 부서 변경
- 크레딧 및 지갑: 크레딧 배분, 회수, 할당 요청/승인/반려, 충전 등 모든 크레딧 이동 내역
- 세션 워크로드: 세션 생성, 일시 중지, 재개, 일반 종료, 강제 종료(사유 포함)
- 볼륨 및 스토리지: 볼륨 생성, 공유 권한 변경, 쿼터 변경, 삭제 및 강제 삭제
- 카탈로그 및 정책: 오퍼링, 프리셋, 자원 정책 수정
- 인프라 및 클러스터: 노드 차단(Cordon)·비우기(Drain)·삭제, 클러스터 등록 및 해제, GPU 카드 장애/복구 상태 변경
- 시스템 설정: 브랜딩, 회원가입 정책, 워크로드 배치 정책 변경
- 보안: 권한 부족으로 인한 접근 거부(
access.denied, 분 단위 중복 제거)
보관 기간 (Retention): 감사 로그 보관 기간은 Helm 차트 설정(
api.auditRetentionDays, 기본값: 180일)을 따릅니다. 해당 값을0으로 설정하면 삭제 없이 영구 보관합니다.
주요 감사 조사 사용 예시
| 조사 목적 / 질문 | 적용 필터 쿼리 조건 |
|---|---|
| 특정 세션이 갑자기 종료된 원인 파악 | 대상 ID = 특정 세션 ID |
| 최근 1주일간 타인의 세션을 강제 종료한 내역 확인 | 액션 = session.force_terminate, 기간 = 1주일 |
| 특정 조직의 크레딧 차감/지출 내역 추적 | 행위자 = 조직 관리자 계정, 액션 = credit.* |
| 비정상적인 권한 접근 시도 탐지 | 결과 = access.denied |
| GPU 카탈로그 변경 이력 추적 | 액션 = offering.* |