Microsoft Graph 활동 로그 수집
다음에서 지원:
Google SecOps
SIEM
개요
이 파서는 Microsoft Graph 활동 로그에서 필드를 추출하여 통합 데이터 모델 (UDM)로 변환합니다. UDM 필드를 초기화하고, 페이로드를 파싱하고, 타임스탬프를 추출하고, 다양한 속성을 UDM 필드에 매핑하고, IP 주소와 포트를 처리하고, 주체 및 네트워크 정보의 존재 여부에 따라 이벤트 유형을 분류합니다.
시작하기 전에
다음 기본 요건이 충족되었는지 확인합니다.
- Google SecOps 인스턴스
- Microsoft Entra ID 및 Azure 스토리지 계정에 대한 권한 있는 액세스
Azure 스토리지 계정 구성
- Azure 콘솔에서 스토리지 계정을 검색합니다.
- 만들기를 클릭합니다.
- 다음 입력 파라미터의 값을 지정합니다.
- 구독: 구독을 선택합니다.
- 리소스 그룹: 리소스 그룹을 선택합니다.
- 리전: 리전을 선택합니다.
- 성능: 원하는 성능 수준을 선택합니다 (표준 권장).
- 중복성: 원하는 중복성 수준을 선택합니다 (GRS 또는 LRS 권장).
- 스토리지 계정 이름: 새 스토리지 계정의 이름을 입력합니다.
- 검토 + 만들기를 클릭합니다.
- 계정 개요를 검토하고 만들기를 클릭합니다.
- 스토리지 계정 개요 페이지의 보안 + 네트워킹에서 하위 메뉴 액세스 키를 선택합니다.
- key1 또는 key2 옆에 있는 표시를 클릭합니다.
- 클립보드에 복사를 클릭하여 키를 복사합니다.
- 나중에 참고할 수 있도록 키를 안전한 위치에 저장합니다.
- 스토리지 계정 개요 페이지의 설정에서 하위 메뉴 엔드포인트를 선택합니다.
- 클립보드에 복사를 클릭하여 Blob 서비스 엔드포인트 URL (예: https://
.blob.core.windows.net )을 복사합니다. - 나중에 참조할 수 있도록 엔드포인트 URL을 안전한 위치에 저장합니다.
스토리지 계정으로 Microsoft Graph 활동 로그 내보내기 구성
- Azure 콘솔에서 Entra ID를 검색합니다.
- 모니터링 > 진단 설정을 선택합니다.
- + 진단 설정 추가를 클릭합니다.
- 설정에 고유한 이름을 지정합니다 (예: ms-graph-activity).
- Google SecOps로 내보낼 MicrosoftGraphActivityLog 카테고리를 선택합니다.
- 대상 세부정보에서 스토리지 계정에 아카이브를 선택합니다.
- 이전 단계에서 만든 구독 및 스토리지 계정을 선택합니다.
- 저장을 클릭합니다.
Microsoft Graph 활동 로그를 설정하는 방법
- SIEM 설정 > 피드로 이동합니다.
- 새 피드 추가를 클릭합니다.
- 다음 페이지에서 단일 피드 구성을 클릭합니다.
- 피드 이름 필드에 피드 이름을 입력합니다(예: Microsoft Graph 활동 로그).
- 소스 유형으로 Microsoft Azure Blob Storage V2를 선택합니다.
- 로그 유형으로 Microsoft Graph 활동 로그를 선택합니다.
- 다음을 클릭합니다.
다음 입력 매개변수의 값을 지정합니다.
Azure URI: blob 엔드포인트 URL입니다.
ENDPOINT_URL/BLOB_NAME
다음을 바꿉니다.
ENDPOINT_URL
: blob 엔드포인트 URL (https://<storageaccountname>.blob.core.windows.net
)BLOB_NAME
: blob의 이름 (예: insights-logs-)
소스 삭제 옵션: 환경설정에 따라 삭제 옵션을 선택합니다.
- 최대 파일 기간: 지난 일수 동안 수정된 파일입니다. 기본값은 180일입니다.
- 공유 키: Azure Blob Storage의 액세스 키입니다.
다음을 클릭합니다.
확정 화면에서 새 피드 구성을 검토한 다음 제출을 클릭합니다.
UDM 매핑 테이블
로그 필드 | UDM 매핑 | 논리 |
---|---|---|
callerIpAddress |
principal.asset.ip |
원시 로그 필드 callerIpAddress 이 UDM 필드에 복사됩니다. |
callerIpAddress |
principal.ip |
원시 로그 필드 callerIpAddress 이 UDM 필드에 복사됩니다. |
category |
security_result.category_details |
원시 로그 필드 category 이 UDM 필드에 복사됩니다. |
correlationId |
security_result.detection_fields.value |
원시 로그 필드 correlationId 이 키가 correlationId 인 UDM 필드에 복사됩니다. |
Level |
security_result.detection_fields.value |
원시 로그 필드 Level 가 문자열로 변환되어 키가 Level 인 UDM 필드에 복사됩니다. |
operationName |
metadata.product_event_type |
원시 로그 필드 operationName 이 UDM 필드에 복사됩니다. |
operationVersion |
additional.fields.value.string_value |
원시 로그 필드 operationVersion 이 키가 operationVersion 인 UDM 필드에 복사됩니다. |
properties.apiVersion |
metadata.product_version |
원시 로그 필드 properties.apiVersion 이 UDM 필드에 복사됩니다. |
properties.appId |
target.resource.product_object_id |
원시 로그 필드 properties.appId 이 UDM 필드에 복사됩니다. |
properties.atContent |
additional.fields.value.string_value |
원시 로그 필드 properties.atContent 이 UDM 필드에 복사됩니다. 여기서 키는 atContent 입니다. |
properties.clientAuthMethod |
extensions.auth.auth_details |
properties.clientAuthMethod 값에 따라 UDM 필드가 'Public Client' (0), 'Client ID/Client Secret' (1) 또는 'Client Certificate' (2)로 설정됩니다. |
properties.clientRequestId |
additional.fields.value.string_value |
원시 로그 필드 properties.clientRequestId 이 UDM 필드에 복사됩니다. 여기서 키는 clientRequestId 입니다. |
properties.durationMs |
network.session_duration.seconds |
원시 로그 필드 properties.durationMs 이 밀리초에서 초로 변환되어 UDM 필드에 복사됩니다. |
properties.identityProvider |
security_result.detection_fields.value |
원시 로그 필드 properties.identityProvider 이 UDM 필드에 복사됩니다. 여기서 키는 identityProvider 입니다. |
properties.ipAddress |
principal.asset.ip |
원시 로그 필드 properties.ipAddress 의 IP 주소가 추출되어 UDM 필드에 복사됩니다. |
properties.ipAddress |
principal.ip |
원시 로그 필드 properties.ipAddress 의 IP 주소가 추출되어 UDM 필드에 복사됩니다. |
properties.location |
principal.location.name |
원시 로그 필드 properties.location 이 UDM 필드에 복사됩니다. |
properties.operationId |
security_result.detection_fields.value |
원시 로그 필드 properties.operationId 이 UDM 필드에 복사됩니다. 여기서 키는 operationId 입니다. |
properties.requestMethod |
network.http.method |
원시 로그 필드 properties.requestMethod 이 UDM 필드에 복사됩니다. |
properties.requestId |
metadata.product_log_id |
원시 로그 필드 properties.requestId 이 UDM 필드에 복사됩니다. |
properties.responseSizeBytes |
network.received_bytes |
원시 로그 필드 properties.responseSizeBytes 가 부호 없는 정수로 변환되어 UDM 필드에 복사됩니다. |
properties.responseStatusCode |
network.http.response_code |
원시 로그 필드 properties.responseStatusCode 가 정수로 변환되어 UDM 필드에 복사됩니다. |
properties.roles |
additional.fields.value.string_value |
원시 로그 필드 properties.roles 이 UDM 필드에 복사됩니다. 여기서 키는 roles 입니다. |
properties.scopes |
additional.fields.value.string_value |
원시 로그 필드 properties.scopes 이 UDM 필드에 복사됩니다. 여기서 키는 Scopes 입니다. |
properties.servicePrincipalId |
principal.user.userid |
properties.userId 이 비어 있으면 원시 로그 필드 properties.servicePrincipalId 이 UDM 필드에 복사됩니다. |
properties.signInActivityId |
network.session_id |
원시 로그 필드 properties.signInActivityId 이 UDM 필드에 복사됩니다. |
properties.tenantId |
metadata.product_deployment_id |
원시 로그 필드 properties.tenantId 이 UDM 필드에 복사됩니다. |
properties.tokenIssuedAt |
additional.fields.value.string_value |
원시 로그 필드 properties.tokenIssuedAt 이 UDM 필드에 복사됩니다. 여기서 키는 tokenIssuedAt 입니다. |
properties.userAgent |
network.http.user_agent |
원시 로그 필드 properties.userAgent 이 UDM 필드에 복사됩니다. |
properties.userId |
principal.user.userid |
원시 로그 필드 properties.userId 이 UDM 필드에 복사됩니다. |
properties.wids |
security_result.detection_fields.value |
원시 로그 필드 properties.wids 이 UDM 필드에 복사됩니다. 여기서 키는 wids 입니다. |
resourceId |
target.resource.attribute.labels.value |
원시 로그 필드 resourceId 이 UDM 필드에 복사됩니다. 여기서 키는 Resource ID 입니다. |
resultSignature |
additional.fields.value.string_value |
원시 로그 필드 resultSignature 이 키가 resultSignature 인 UDM 필드에 복사됩니다. |
time |
metadata.event_timestamp |
원시 로그 필드 time 가 파싱되어 타임스탬프로 변환되고 UDM 필드에 복사됩니다. has_principal 이 true이고 network.http 가 비어 있지 않으면 UDM 필드 event.idm.read_only_udm.metadata.event_type 이 'NETWORK_HTTP'로 설정되고, has_principal 이 true이고 network.http 가 비어 있으면 'STATUS_UPDATE'로 설정되고, 그 밖의 경우 'GENERIC_EVENT'로 설정됩니다. UDM 필드가 'Microsoft Graph'로 설정됩니다. UDM 필드가 'Microsoft'로 설정됩니다. |
도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가로부터 답변을 받으세요.