감사 범주와 데이터 이벤트 필드
감사 범주(Category)는 어떤 제품이 기록했는지보다 어떤 동작이 일어났는지를 기준으로 이벤트를 구분합니다. dataLoad, dataExport, userLogin 같은 범주를 사용하면 제품별 이벤트 이름 목록을 계속 늘리지 않고 같은 종류의 활동을 조회할 수 있습니다.
Audit.3의 각 로그에는 하나 이상의 categories가 있으며, 선택한 범주에 따라 requestFields와 resultFields를 읽습니다. Request는 호출할 때 알려진 내용, result는 실행 중 얻거나 실제 반환한 내용입니다. 하나의 로그에 여러 범주가 있으면 그 범주들의 필드가 함께 들어갑니다. 과거 audit.2에서는 범주가 선택적이며 같은 구조를 보장하지 않습니다.
조사할 때에는 시간 범위를 먼저 제한하고 관련 범주를 고른 뒤 상세 필드를 확인합니다. 데이터 조회와 외부 내보내기를 함께 조사하되, dataLoad가 있다는 사실만으로 내보내기를 단정하지 않습니다. 반대로 확인한 로그에서 dataExport를 찾지 못했다는 사실만으로 화면 캡처 등 모든 반출 경로가 없었다고 결론내리지 않습니다.
필드 뒤의 필수 또는 선택은 해당 범주의 규약입니다. 로그에 적용된 다른 범주가 추가 정보를 제공할 수 있습니다. 플랫폼과 보안 범주는 플랫폼 이벤트 필드, 온톨로지, 로직, 모니터와 승인 요청은 업무 리소스 이벤트 필드에서 다룹니다.
데이터 생성, 이동과 조회
| 범주 | 동작 | requestFields | resultFields |
|---|---|---|---|
dataCreate | 이전에 없던 새 데이터를 플랫폼에 만듭니다. 도착 서비스가 기록한 작업은 다른 서비스에서 dataPromote로도 나타날 수 있습니다. | createdResources(필수): 생성한 DataResource | |
dataDelete | 삭제 단위와 관계없이 데이터를 삭제합니다. | deletedResources(필수): 삭제한 DataResource | |
dataExport | CSV 다운로드 등 Palantir 플랫폼 밖으로 데이터를 내보냅니다. 다른 Palantir 시스템으로 보내는 작업은 dataPromote로 구분합니다. | downloadedResources(필수): 다운로드한 모든 리소스 | downloadedSize(필수): 다운로드한 바이트 수 |
dataImport | 플랫폼 밖에서 데이터를 가져옵니다. 한 시스템의 dataImport가 다른 서비스에서는 dataPromote로 보일 수 있습니다. | importedFilename(필수): 파일 이름; importedFileType(필수): 파일 형식; importParentResourceId(선택): 목적지 리소스의 상위 리소스 | importResourceId(필수): 가져온 데이터의 목적지; importedSize(선택): 전체 바이트 수 |
bulkDataImport | 원본과 목적지의 개별 대응을 알기 어려운 대량 가져오기입니다. | bulkImportedFiles(필수): 가져온 파일 | bulkImportDestinations(필수): 대량 가져오기의 목적지 |
dataLoad | 사용자에게 반환할 데이터를 읽습니다. 순수 백엔드 읽기는 internal로 구분합니다. | loadedResources(필수): 읽은 DataResource | |
dataMerge | 두 데이터소스를 하나로 결합합니다. Contour JOIN이나 Gotham Resolution 등이 해당합니다. | resourcesToMerge(필수): 결합한 리소스 | mergedResult(필수): 결과 DataResource |
dataPromote | Gotham 등 다른 Palantir 시스템으로 데이터를 전달합니다. | promotionDestinations(필수): 목적지; promotionDescription(필수): 전달 설명; promotedResources(필수): 전달한 리소스 | |
dataSearch | 데이터셋, 객체 등 시스템 안의 데이터를 검색합니다. | dataSearchQuery(필수): 검색 쿼리; dataSearchContext: list<common.ResourceContext> 형식의 보조 맥락 | dataSearchResults(필수): 사용자에게 보여 준 모든 결과 리소스 |
dataTransform | 하나 이상의 DataResource를 변환합니다. | transformTargets(필수): 변환 대상; transformDescription(필수): 수행한 변환 설명 | |
dataUpdate | 데이터의 갱신 또는 갱신 시도를 포괄합니다. 가능하면 더 구체적인 dataTransform이나 dataMerge로 분석합니다. |
DataSearchContext의 상세 내용은 감사자가 상황을 이해하기 위한 비정형 맥락입니다. 안정적인 자동 처리 계약으로 의존하지 않습니다.
공유
| 범주 | 동작 | requestFields | resultFields |
|---|---|---|---|
dataShareCreate | 방문 시 접근을 부여하는 링크 등 데이터 공유 수단을 만듭니다. | dataShareCreateId(선택): 공유 식별자; dataShareCreateTargets(필수): 공유 대상 | |
dataShareDisable | 접근을 부여하는 링크 등의 공유 수단을 비활성화합니다. | dataShareDisableId(선택): 공유 식별자; dataShareDisableTargets(필수): 대상 | |
dataShare | 재량적 데이터 공유가 일어납니다. | dataShareId(선택): 공유 식별자; dataShareTargets(필수): 대상; dataShareReason(필수): 공유 링크 방문 등 사람이 읽을 수 있는 공유 사유 |
메타데이터
메타데이터는 행 수, 데이터셋 이름과 트랜잭션 ID처럼 데이터에 관한 정보입니다. 자체 식별자 대신 설명하는 원본 데이터 리소스를 참조할 수 있습니다.
| 범주 | 동작 | requestFields | resultFields |
|---|---|---|---|
metaDataAccess | 메타데이터를 읽습니다. | accessedMetaDataResources(필수): 해당 메타데이터가 설명하는 DataResource; accessedMetaDataDescription(필수): 접근 설명 | |
metaDataCreate | 메타데이터를 만듭니다. | createdMetaDataDescription(필수): 생성 설명 | createdMetaDataResources(필수): 새 메타데이터가 설명하는 DataResource |
metaDataDelete | 메타데이터를 삭제합니다. | deletedMetaDataResources(필수): 대상 DataResource; deletedMetaDataDescription(필수): 삭제 설명 | |
metaDataSearch | 데이터셋이나 객체 등에 연결된 메타데이터를 검색합니다. | metaDataSearchQuery(필수): 쿼리 | metaDataSearchResults(필수): 메타데이터가 사용자에게 표시된 원본 리소스 |
metaDataUpdate | 메타데이터를 갱신합니다. | updatedMetaDataResources(필수): 대상 DataResource; updatedMetaDataDescription(필수): 갱신 설명 |
정적 에셋 파일
| 범주 | 동작 | requestFields | resultFields |
|---|---|---|---|
assetFileLoad | 정적 에셋의 파일을 group, artifact와 version 좌표로 읽는 이전 범주입니다. 새 분석에서는 assetFileLoadV2를 사용합니다. | requestMavenCoordinate(필수): 요청한 Maven 좌표. groupId나 version이 없을 수 있습니다. | responseMavenCoordinate(필수): 반환한 에셋의 완전한 Maven 좌표 |
assetFileLoadV2 | 에셋 좌표 또는 내용 주소 기반 저장소에서 파일을 읽습니다. | fileIdentifier(필수) | fileLoadResponse(필수) |
감사 데이터 자체의 작업
auditDataShareCreate
감사 로그를 읽을 수 있는 서명 URL 같은 공유를 생성합니다. 이 요청은 데이터 자체가 아니라 추가 인증 검사 없이 데이터를 얻을 수 있는 포인터를 반환하므로 공유 결과도 민감하게 관리합니다.
- Request의
shareTargets(필수)는 공유할 감사 데이터 식별자입니다. - Result의
shareIds(필수)는 공유 대상에서 생성한 데이터 공유로의 매핑입니다.
auditDataTransform
감사 데이터를 가진 DataResource 하나를 변환합니다.
- Request의
transformTarget(필수)는 입력 리소스이며transformDescriptions(필수)는 수행한 변환 설명입니다. - Result의
transformDestination(선택)은 출력 저장 위치입니다. 없으면 변환은 메모리에서만 수행되고 결과가 사용자에게 보였는지와 관계없이 영구 저장하지 않은 것으로 해석합니다. - 제자리 변환은 target과 destination이 같은 DataResource입니다.
auditDataRedact
민감 정보 유입 사고의 조치로 감사 데이터를 가리는 작업입니다. 실제 로그 저장소 변경은 승인된 사고 처리 절차와 Palantir Support의 지원을 통해 관리합니다.
| 구분 | 필드 | 의미 |
|---|---|---|
| 요청, 필수 | requestedAuditEventIds | 영향이 의심되는 감사 이벤트 식별자입니다. |
| 요청, 필수 | organizationRid | 의심 이벤트가 귀속된 조직입니다. |
| 요청, 필수 | startDate | 의심 이벤트 시간 구간의 시작입니다. |
| 요청, 필수 | endDate | 시간 구간의 끝입니다. |
| 요청, 필수 | redactionReason | 비어 있지 않은 조치 사유입니다. |
| 결과, 필수 | redactionRequestId | 이 요청의 UUID입니다. |
| 결과, 필수 | redactedAuditEventIds | 지정 조직에서 실제로 가린 이벤트 ID입니다. |
| 결과, 필수 | redactedServiceUserAttributedAuditEventIds | 서비스 사용자 귀속 이벤트 중 실제로 가린 ID입니다. |
| 결과, 필수 | missingAuditEventIds | 지정 시간 안에서 해당 조직과 서비스 사용자 귀속 어느 쪽에도 찾지 못한 의심 이벤트 ID입니다. |
| 결과, 필수 | redactedLineCount | 실제로 가린 물리 로그 행 수입니다. |
| 결과, 필수 | modifiedFiles | 변경한 모든 파일의 원래 이름에서 새 이름으로의 매핑입니다. |