본문으로 건너뛰기

endpoints

관련 문서

Audit API 엔드포인트

목차

  1. 개요
  2. 프로세스 개요
  3. 권한 모델
  4. 감사 로그 관리
  5. 감사 정책 관리
  6. 데이터 보존 관리
  7. 분석 및 보고
  8. 감사 이벤트 유형
  9. 상태 코드 및 오류 처리
  10. 관련 문서
  11. 변경 이력

개요

Audit API는 시스템 내의 모든 중요 활동을 추적하고 기록하기 위한 통합 감사 로깅 시스템을 제공합니다. 다음과 같은 주요 프로세스를 지원합니다:

  1. 감사 로그 관리 프로세스

    • 감사 로그 생성 → 감사 로그 조회 → 감사 추적 분석
    • 모든 중요 이벤트에 대한 상세 기록 유지
    • 실시간 로그 생성 및 조회 지원
  2. 감사 정책 관리 프로세스

    • 정책 생성 → 정책 관리 → 정책 적용
    • 유연한 감사 정책 설정 기능
    • 세분화된 이벤트 필터링 지원
  3. 데이터 보존 관리 프로세스

    • 보존 정책 설정 → 아카이빙 → 데이터 정리
    • 규정 준수를 위한 데이터 보존 기간 관리
    • 자동화된 아카이빙 및 정리 프로세스
  4. 분석 및 보고 프로세스

    • 통계 분석 → 보고서 생성 → 보고서 다운로드
    • 실시간 감사 데이터 분석
    • 맞춤형 보고서 생성 기능

각 프로세스별 API 엔드포인트는 아래에서 자세히 설명합니다.

프로세스 개요

1. 감사 로그 관리 프로세스

감사 로그 관리 프로세스는 시스템 내 모든 중요 작업에 대한 기록을 생성하고 조회하는 기능을 제공합니다:

  1. 감사 로그 생성: 중요 이벤트 발생 시 감사 로그를 생성합니다.
  2. 감사 로그 조회: 다양한 필터를 통해 감사 로그를 검색합니다.
  3. 감사 추적 조회: 연관된 이벤트들의 시퀀스를 추적합니다.
  4. 세션별 감사 로그 조회: 특정 세션 내 활동을 추적합니다.

2. 감사 정책 관리 프로세스

감사 정책 관리 프로세스는 시스템의 어떤 이벤트를 기록할지 정의하고 관리하는 기능을 제공합니다:

  1. 정책 생성: 새로운 감사 정책을 정의합니다.
  2. 정책 조회 및 관리: 기존 정책을 조회하고 필요에 따라 수정합니다.
  3. 정책 적용: 정책을 활성화하거나 비활성화합니다.

3. 데이터 보존 관리 프로세스

데이터 보존 관리 프로세스는 감사 로그의 장기 보존과 데이터 수명주기 관리 기능을 제공합니다:

  1. 보존 정책 설정: 데이터 유형별 보존 기간을 설정합니다.
  2. 아카이빙: 오래된 데이터를 저비용 저장소로 이동합니다.
  3. 데이터 정리: 보존 기간이 만료된 데이터를 안전하게 삭제합니다.

4. 분석 및 보고 프로세스

분석 및 보고 프로세스는 감사 데이터를 기반으로 통계 분석과 보고서 생성 기능을 제공합니다:

  1. 통계 분석: 이벤트 유형, 사용자, 리소스 등에 대한 통계를 수집합니다.
  2. 보고서 생성: 감사 이벤트 데이터를 기반으로 보고서를 생성합니다.
  3. 보고서 다운로드: 생성된 보고서를 다운로드합니다.

권한 모델

보안 중요 사항: 감사 로그(Audit Log) 시스템은 민감한 보안 정보를 포함하고 있으므로 적절한 접근 제어가 필수적입니다.

권한 레벨

  1. AUDIT_WRITE: 감사 로그 생성 권한 (서비스 계정만 가능)
  2. AUDIT_READ: 감사 로그 조회 권한 (관리자 이상)
  3. AUDIT_ADMIN: 감사 정책 관리 및 데이터 보존 관리 권한 (상위 관리자)
  4. AUDIT_EXPORT: 감사 데이터 내보내기 및 보고서 생성 권한 (관리자 이상)

사용자 유형별 권한

System Admin

  • 전체 감사 로그 조회/관리
  • 감사 로그 보관 정책 관리
  • 감사 로그 익스포트
  • 감사 알림 설정 관리
  • 감사 로그 삭제 (법적 요구사항 준수)

IAM Admin

  • 할당된 범위 내 감사 로그 조회
  • 감사 로그 필터링 및 검색
  • IAM 관련 감사 로그 전체 조회

Audit Admin

  • 할당된 범위 내 감사 로그 조회/관리
  • 감사 정책 관리
  • 데이터 보존 정책 관리
  • 보고서 생성 및 조회

Service Account

  • 감사 로그 생성만 가능
  • 자신이 생성한 로그 조회 불가
  • 정책 관리 불가

Regular User

  • 자신의 활동 로그만 조회 가능
  • 정책 조회/관리 불가
  • 보고서 생성 불가

권한 범위

  • 글로벌 범위: 시스템 관리자만 접근 가능
  • 조직 범위: 해당 조직의 관리자와 감사 관리자가 접근 가능
  • 팀 범위: 해당 팀의 관리자와 감사 관리자가 접근 가능
  • 개인 범위: 자신의 활동 로그만 접근 가능

접근 제한

  • 모든 Audit API 엔드포인트는 인증된 사용자만 접근 가능
  • 권한 부족 시 403 Forbidden 응답 반환
  • 서비스 계정은 로그 생성만 가능, 조회 불가
  • 기록된 감사 로그는 수정 또는 삭제 불가 (불변성 보장)
  • IAM 관련 감사 로그는 추가 보안 검증 필요

API 사용 제한

  • System Admin: 제한 없음
  • IAM Admin: 시간당 5,000 요청
  • Service Account: 시간당 50,000 요청
  • Regular User: 시간당 100 요청

데이터 보존 정책

  • 일반 로그: 1년
  • 보안 관련 로그: 3년
  • 개인정보 관련 로그: 5년
  • 법적 요구사항 관련 로그: 10년

엔드포인트 접근 권한 매트릭스

엔드포인트System AdminIAM AdminAudit AdminService AccountRegular User
POST /v1/audit/logs
GET /v1/audit/logs범위 내범위 내자신만
GET /v1/audit/trails/{correlationId}범위 내범위 내자신만
GET /v1/audit/sessions/{sessionId}/logs범위 내범위 내자신만
POST /v1/audit/policies범위 내
GET /v1/audit/policies범위 내범위 내
PUT /v1/audit/policies/{policyId}범위 내
DELETE /v1/audit/policies/{policyId}

참고:

  • ✓: 접근 가능
  • ✘: 접근 불가
  • (범위 내): 할당된 조직/팀 범위 내에서만 접근 가능
  • (자신만): 자신의 데이터에만 접근 가능

감사 로그 관리

1. 감사 로그 생성

요청 (Request)

  • HTTP 메서드: POST
  • 경로: /audit/logs
  • Headers:
    • Authorization: Bearer {token}
    • Content-Type: application/json
  • 필요 권한: AUDIT_WRITE
  • Body:
{
"eventType": "USER_LOGIN",
"source": "auth-service",
"actor": {
"type": "USER",
"id": "user123",
"name": "John Doe",
"attributes": {
"role": "admin"
}
},
"target": {
"type": "RESOURCE",
"id": "system",
"name": "Admin Portal",
"resourceType": "APPLICATION"
},
"action": "LOGIN",
"details": {
"ipAddress": "192.168.1.1",
"loginMethod": "password"
},
"metadata": {
"correlationId": "corr-123",
"requestId": "req-456",
"ipAddress": "192.168.1.1",
"userAgent": "Mozilla/5.0",
"sessionId": "sess-789"
},
"status": "SUCCESS"
}

응답 (Response)

  • 성공 응답 (201 Created):
{
"id": "audit-log-123",
"timestamp": 1711016645123,
"eventType": "USER_LOGIN",
"source": "auth-service",
"actor": {
"type": "USER",
"id": "user123",
"name": "John Doe",
"attributes": {
"role": "admin"
}
},
"target": {
"type": "RESOURCE",
"id": "system",
"name": "Admin Portal",
"resourceType": "APPLICATION"
},
"action": "LOGIN",
"details": {
"ipAddress": "192.168.1.1",
"loginMethod": "password"
},
"metadata": {
"correlationId": "corr-123",
"requestId": "req-456",
"ipAddress": "192.168.1.1",
"userAgent": "Mozilla/5.0",
"sessionId": "sess-789"
},
"status": "SUCCESS"
}
  • 실패 응답 (400 Bad Request):
{
"code": 1001,
"message": "INVALID_INPUT",
"detail": "Invalid input parameters",
"errors": [
{
"field": "eventType",
"message": "Event type is required"
}
]
}

2. 감사 로그 조회

요청 (Request)

  • HTTP 메서드: GET
  • 경로: /audit/logs
  • Headers:
    • Authorization: Bearer {token}
  • 필요 권한: AUDIT_READ
  • Query Parameters:
    • startDate: 시작 날짜 (Unix 타임스탬프, 밀리초)
    • endDate: 종료 날짜 (Unix 타임스탬프, 밀리초)
    • eventType: 이벤트 유형 (예: USER_LOGIN)
    • source: 이벤트 소스
    • actorId: 액터 ID
    • actorType: 액터 유형
    • targetId: 타겟 ID
    • targetType: 타겟 유형
    • action: 수행된 작업
    • status: 상태 (SUCCESS, FAILURE)
    • page: 페이지 번호 (기본값: 1)
    • size: 페이지 크기 (기본값: 20)
    • sort: 정렬 필드 (기본값: timestamp)
    • order: 정렬 방향 (asc, desc, 기본값: desc)

응답 (Response)

  • 성공 응답 (200 OK):
{
"items": [
{
"id": "audit-log-123",
"timestamp": 1711016645123,
"eventType": "USER_LOGIN",
"source": "auth-service",
"actor": {
"type": "USER",
"id": "user123",
"name": "John Doe"
},
"target": {
"type": "RESOURCE",
"id": "system",
"name": "Admin Portal"
},
"action": "LOGIN",
"details": {
"ipAddress": "192.168.1.1",
"loginMethod": "password"
},
"metadata": {
"correlationId": "corr-123",
"sessionId": "sess-789"
},
"status": "SUCCESS"
}
],
"metadata": {
"currentPage": 1,
"pageSize": 20,
"totalCount": 145,
"totalPages": 8
}
}

3. 감사 추적(Audit Trail) 조회

요청 (Request)

  • HTTP 메서드: GET
  • 경로: /audit/trails/{correlationId}
  • Headers:
    • Authorization: Bearer {token}
  • 필요 권한: AUDIT_READ
  • Path Parameters:
    • correlationId: 연관 이벤트를 추적하기 위한 ID

응답 (Response)

  • 성공 응답 (200 OK):
{
"correlationId": "corr-123",
"startTimestamp": 1711016645123,
"endTimestamp": 1711016912456,
"events": [
{
"id": "audit-log-123",
"timestamp": 1711016645123,
"eventType": "USER_LOGIN",
"source": "auth-service",
"action": "LOGIN",
"status": "SUCCESS"
},
{
"id": "audit-log-124",
"timestamp": 1711016730789,
"eventType": "ROLE_CHANGE",
"source": "user-service",
"action": "UPDATE",
"status": "SUCCESS"
},
{
"id": "audit-log-125",
"timestamp": 1711016912456,
"eventType": "USER_LOGOUT",
"source": "auth-service",
"action": "LOGOUT",
"status": "SUCCESS"
}
]
}

4. 세션별 감사 로그 조회

요청 (Request)

  • HTTP 메서드: GET
  • 경로: /audit/sessions/{sessionId}/logs
  • Headers:
    • Authorization: Bearer {token}
  • 필요 권한: AUDIT_READ
  • Path Parameters:
    • sessionId: 클라이언트 세션 ID
  • Query Parameters:
    • page: 페이지 번호 (기본값: 1)
    • size: 페이지 크기 (기본값: 20)

응답 (Response)

  • 성공 응답 (200 OK):
{
"sessionId": "sess-789",
"startTimestamp": 1711016645123,
"endTimestamp": 1711016912456,
"userId": "user123",
"userName": "John Doe",
"ipAddress": "192.168.1.1",
"userAgent": "Mozilla/5.0",
"events": [
{
"id": "audit-log-123",
"timestamp": 1711016645123,
"eventType": "USER_LOGIN",
"action": "LOGIN",
"status": "SUCCESS"
},
{
"id": "audit-log-125",
"timestamp": 1711016912456,
"eventType": "USER_LOGOUT",
"action": "LOGOUT",
"status": "SUCCESS"
}
]
}

감사 정책 관리

1. 감사 정책 생성

요청 (Request)

  • HTTP 메서드: POST
  • 경로: /audit/policies
  • Headers:
    • Authorization: Bearer {token}
    • Content-Type: application/json
  • 필요 권한: AUDIT_ADMIN
  • Body:
{
"name": "User Authentication Policy",
"description": "Audit policy for user authentication events",
"eventTypes": ["USER_LOGIN", "USER_LOGOUT", "PASSWORD_CHANGE"],
"sources": ["auth-service"],
"enabled": true,
"retentionPeriod": "P1Y" // ISO 8601 기간 형식 (1년)
}

응답 (Response)

  • 성공 응답 (201 Created):
{
"id": "policy-123",
"name": "User Authentication Policy",
"description": "Audit policy for user authentication events",
"eventTypes": ["USER_LOGIN", "USER_LOGOUT", "PASSWORD_CHANGE"],
"sources": ["auth-service"],
"enabled": true,
"retentionPeriod": "P1Y",
"createdAt": 1711019730123,
"updatedAt": 1711019730123
}

2. 감사 정책 조회

요청 (Request)

  • HTTP 메서드: GET
  • 경로: /audit/policies
  • Headers:
    • Authorization: Bearer {token}
  • 필요 권한: AUDIT_READ 또는 AUDIT_ADMIN
  • Query Parameters:
    • name: 정책 이름 (부분 일치)
    • enabled: 활성화 상태 (true/false)
    • page: 페이지 번호 (기본값: 1)
    • size: 페이지 크기 (기본값: 20)

응답 (Response)

  • 성공 응답 (200 OK):
{
"items": [
{
"id": "policy-123",
"name": "User Authentication Policy",
"description": "Audit policy for user authentication events",
"eventTypes": ["USER_LOGIN", "USER_LOGOUT", "PASSWORD_CHANGE"],
"sources": ["auth-service"],
"enabled": true,
"retentionPeriod": "P1Y",
"createdAt": 1711019730123,
"updatedAt": 1711019730123
}
],
"metadata": {
"currentPage": 1,
"pageSize": 20,
"totalCount": 5,
"totalPages": 1
}
}

3. 감사 정책 수정

요청 (Request)

  • HTTP 메서드: PUT
  • 경로: /audit/policies/{policyId}
  • Headers:
    • Authorization: Bearer {token}
    • Content-Type: application/json
  • 필요 권한: AUDIT_ADMIN
  • Path Parameters:
    • policyId: 정책 ID
  • Body:
{
"name": "User Authentication Policy",
"description": "Updated audit policy for user authentication events",
"eventTypes": ["USER_LOGIN", "USER_LOGOUT", "PASSWORD_CHANGE", "MFA_VERIFICATION"],
"sources": ["auth-service"],
"enabled": true,
"retentionPeriod": "P2Y" // 2년으로 변경
}

응답 (Response)

  • 성공 응답 (200 OK):
{
"id": "policy-123",
"name": "User Authentication Policy",
"description": "Updated audit policy for user authentication events",
"eventTypes": ["USER_LOGIN", "USER_LOGOUT", "PASSWORD_CHANGE", "MFA_VERIFICATION"],
"sources": ["auth-service"],
"enabled": true,
"retentionPeriod": "P2Y",
"createdAt": 1711019730123,
"updatedAt": 1711025122456
}

4. 감사 정책 삭제

요청 (Request)

  • HTTP 메서드: DELETE
  • 경로: /audit/policies/{policyId}
  • Headers:
    • Authorization: Bearer {token}
  • 필요 권한: AUDIT_ADMIN
  • Path Parameters:
    • policyId: 정책 ID

응답 (Response)

  • 성공 응답 (204 No Content)

5. 감사 정책 활성화/비활성화

요청 (Request)

  • HTTP 메서드: PATCH
  • 경로: /audit/policies/{policyId}/status
  • Headers:
    • Authorization: Bearer {token}
    • Content-Type: application/json
  • 필요 권한: AUDIT_ADMIN
  • Path Parameters:
    • policyId: 정책 ID
  • Body:
{
"enabled": false
}

응답 (Response)

  • 성공 응답 (200 OK):
{
"id": "policy-123",
"enabled": false,
"updatedAt": 1711027815789
}

데이터 보존 관리 API

1. 보존 정책 적용

  • HTTP 메서드: POST
  • 경로: /audit/retention/apply
  • Headers:
    • Authorization: Bearer {token}
    • Content-Type: application/json
  • 필요 권한: AUDIT_ADMIN

요청 (Request)

{
"policyId": "policy-123"
}

응답 (Response)

  • 성공 응답 (202 Accepted):
{
"taskId": "task-123",
"policyId": "policy-123",
"status": "SCHEDULED",
"scheduledAt": 1711033200000,
"estimatedCompletionTime": 1711034100000
}

2. 아카이빙 요청

  • HTTP 메서드: POST
  • 경로: /audit/retention/archive
  • Headers:
    • Authorization: Bearer {token}
    • Content-Type: application/json
  • 필요 권한: AUDIT_ADMIN

요청 (Request)

{
"startDate": 1704067200000,
"endDate": 1714460399000,
"destination": "GCS",
"bucketName": "audit-archives",
"compressionEnabled": true
}

응답 (Response)

  • 성공 응답 (202 Accepted):
{
"taskId": "task-456",
"type": "ARCHIVE",
"status": "SCHEDULED",
"params": {
"startDate": 1704067200000,
"endDate": 1714460399000,
"destination": "GCS",
"bucketName": "audit-archives"
},
"scheduledAt": 1711036800000,
"estimatedCompletionTime": 1711042200000
}

3. 데이터 정리 요청

  • HTTP 메서드: POST
  • 경로: /audit/retention/purge
  • Headers:
    • Authorization: Bearer {token}
    • Content-Type: application/json
  • 필요 권한: AUDIT_ADMIN

요청 (Request)

{
"endDate": 1703980799000,
"confirmationCode": "PURGE-DATA"
}

응답 (Response)

  • 성공 응답 (202 Accepted):
{
"taskId": "task-789",
"type": "PURGE",
"status": "SCHEDULED",
"params": {
"endDate": 1703980799000
},
"scheduledAt": 1711044000000,
"estimatedCompletionTime": 1711045800000
}

분석 및 보고 API

1. 감사 이벤트 통계 조회

  • HTTP 메서드: GET
  • 경로: /audit/analytics/statistics
  • Headers:
    • Authorization: Bearer {token}
  • 필요 권한: AUDIT_READ 또는 AUDIT_EXPORT
  • Query Parameters:
    • startDate: 시작 날짜 (Unix 타임스탬프, 밀리초)
    • endDate: 종료 날짜 (Unix 타임스탬프, 밀리초)
    • groupBy: 통계 그룹화 기준 (eventType, source, action, status)
    • interval: 시간 간격 (hour, day, week, month)

응답 (Response)

  • 성공 응답 (200 OK):
{
"startDate": 1709251200000,
"endDate": 1711016399000,
"totalCount": 1542,
"groupBy": "eventType",
"interval": "day",
"series": [
{
"key": "USER_LOGIN",
"count": 843,
"timeSeries": [
{ "timestamp": 1709251200000, "count": 42 },
{ "timestamp": 1709337600000, "count": 51 }
]
},
{
"key": "USER_LOGOUT",
"count": 699,
"timeSeries": [
{ "timestamp": 1709251200000, "count": 35 },
{ "timestamp": 1709337600000, "count": 45 }
]
}
]
}

2. 보고서 생성

  • HTTP 메서드: POST
  • 경로: /audit/reports
  • Headers:
    • Authorization: Bearer {token}
    • Content-Type: application/json
  • 필요 권한: AUDIT_EXPORT

요청 (Request)

{
"name": "Monthly User Activity Report",
"description": "User login/logout activities for March 2025",
"criteria": {
"startDate": 1709251200000,
"endDate": 1711929599000,
"eventTypes": ["USER_LOGIN", "USER_LOGOUT"],
"sources": ["auth-service"]
},
"format": "PDF",
"schedule": {
"type": "ONCE",
"scheduledAt": 1712037600000
}
}

응답 (Response)

  • 성공 응답 (201 Created):
{
"id": "report-123",
"name": "Monthly User Activity Report",
"description": "User login/logout activities for March 2025",
"criteria": {
"startDate": 1709251200000,
"endDate": 1711929599000,
"eventTypes": ["USER_LOGIN", "USER_LOGOUT"],
"sources": ["auth-service"]
},
"format": "PDF",
"status": "SCHEDULED",
"schedule": {
"type": "ONCE",
"scheduledAt": 1712037600000
},
"createdAt": 1711044930123
}

감사 이벤트 유형

사용자 활동

  • USER_LOGIN - 사용자 로그인
  • USER_LOGOUT - 사용자 로그아웃
  • USER_PROFILE_VIEW - 사용자 프로필 조회
  • USER_PROFILE_UPDATE - 사용자 프로필 업데이트
  • PASSWORD_CHANGE - 비밀번호 변경
  • PASSWORD_RESET - 비밀번호 재설정

데이터 변경

  • DATA_CREATE - 데이터 생성
  • DATA_UPDATE - 데이터 업데이트
  • DATA_DELETE - 데이터 삭제
  • DATA_ACCESS - 데이터 접근

권한 관리

  • PERMISSION_GRANT - 권한 부여
  • PERMISSION_REVOKE - 권한 취소
  • ROLE_CHANGE - 역할 변경
  • CONSENT_CHANGE - 동의 변경

IAM 이벤트

  • IAM_ROLE_CREATE - IAM 역할 생성
  • IAM_ROLE_UPDATE - IAM 역할 수정
  • IAM_ROLE_DELETE - IAM 역할 삭제
  • IAM_POLICY_CREATE - IAM 정책 생성
  • IAM_POLICY_UPDATE - IAM 정책 수정
  • IAM_POLICY_DELETE - IAM 정책 삭제
  • IAM_USER_ROLE_ASSIGN - 사용자에게 역할 할당
  • IAM_USER_ROLE_REVOKE - 사용자의 역할 회수
  • IAM_GROUP_CREATE - IAM 그룹 생성
  • IAM_GROUP_UPDATE - IAM 그룹 수정
  • IAM_GROUP_DELETE - IAM 그룹 삭제
  • IAM_USER_GROUP_ADD - 사용자를 그룹에 추가
  • IAM_USER_GROUP_REMOVE - 사용자를 그룹에서 제거
  • IAM_SCOPE_CHANGE - IAM 범위 변경
  • IAM_PERMISSION_VERIFY - IAM 권한 검증

시스템 이벤트

  • SERVICE_START - 서비스 시작
  • SERVICE_STOP - 서비스 중지
  • CONFIG_CHANGE - 설정 변경
  • POLICY_CHANGE - 정책 변경
  • AUDIT_POLICY_CHANGE - 감사 정책 변경

보안 이벤트

  • LOGIN_FAILURE - 로그인 실패
  • ACCESS_DENIED - 접근 거부
  • SUSPICIOUS_ACTIVITY - 의심스러운 활동
  • RATE_LIMIT_EXCEEDED - 요청 제한 초과

상태 코드 및 오류 처리

HTTP 상태 코드 요약

상태 코드설명상황
200OK요청 성공
201Created리소스 생성 성공
202Accepted비동기 작업 요청 수락
400Bad Request잘못된 요청
401Unauthorized인증 필요
403Forbidden권한 없음
404Not Found리소스 없음
500Internal Server Error서버 오류
503Service Unavailable서비스 불가

오류 코드

HTTP 상태 코드오류 코드메시지설명대응 방법
4003001INVALID_EVENT_TYPE유효하지 않은 이벤트 유형지원되는 이벤트 유형으로 다시 요청
4003002INVALID_AUDIT_POLICY유효하지 않은 감사 정책정책 설정 확인
4003003INVALID_DATE_RANGE유효하지 않은 날짜 범위올바른 날짜 범위로 다시 요청
4003004INVALID_RETENTION_PERIOD유효하지 않은 보존 기간ISO 8601 기간 형식 확인
4003005MISSING_REQUIRED_FIELD필수 필드 누락필수 필드 포함하여 다시 요청
4013101INVALID_SERVICE_TOKEN유효하지 않은 서비스 토큰서비스 토큰 재발급
4013102EXPIRED_SERVICE_TOKEN만료된 서비스 토큰서비스 토큰 갱신
4033201AUDIT_PERMISSION_DENIED감사 로그 접근 권한 없음필요한 권한 확인
4033202POLICY_PERMISSION_DENIED감사 정책 관리 권한 없음AUDIT_ADMIN 권한 확인
4033203RETENTION_PERMISSION_DENIED데이터 보존 관리 권한 없음AUDIT_ADMIN 권한 확인
4043301AUDIT_LOG_NOT_FOUND감사 로그를 찾을 수 없음로그 ID 확인
4043302AUDIT_POLICY_NOT_FOUND감사 정책을 찾을 수 없음정책 ID 확인
4043303REPORT_NOT_FOUND보고서를 찾을 수 없음보고서 ID 확인
4093401DUPLICATE_POLICY_NAME중복된 정책 이름다른 정책 이름 사용
4093402POLICY_IN_USE사용 중인 정책 삭제 시도정책 비활성화 후 삭제
4103501REPORT_EXPIRED보고서 다운로드 기간 만료보고서 재생성
4293601RATE_LIMIT_EXCEEDEDAPI 호출 한도 초과잠시 후 다시 시도

오류 응답 예시

{
"code": 3001,
"message": "INVALID_EVENT_TYPE",
"detail": "Provided event type is not supported",
"errors": [
{
"field": "eventType",
"message": "Must be one of: USER_LOGIN, USER_LOGOUT, ..."
}
]
}

관련 문서

TBD

변경 이력

버전날짜작성자변경 내용
0.1.02025-03-19bok@weltcorp.com최초 작성