Cloud Logging
이 문서에서는 Cloud Logging을 Google Security Operations SOAR와 통합하는 방법을 안내합니다.
통합 버전: 1.0
시작하기 전에
통합을 사용하려면 Google Cloud 서비스 계정이 필요합니다. 기존 서비스 계정을 사용하거나 새 계정을 만들 수 있습니다.
서비스 계정 만들기
서비스 계정 만들기에 관한 안내는 서비스 계정 만들기를 참고하세요.
서비스 계정을 사용하여 Google Cloud에 인증하는 경우 JSON으로 서비스 계정 키를 만들고 통합 매개변수를 구성할 때 다운로드한 JSON 파일의 콘텐츠를 제공할 수 있습니다.
보안상의 이유로 서비스 계정 키 대신 워크로드 아이덴티티 이메일 주소를 사용하는 것이 좋습니다. 워크로드 아이덴티티에 대한 자세한 내용은 워크로드의 아이덴티티를 참고하세요.
Cloud Logging을 Google SecOps SOAR와 통합
Cloud Logging 통합에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 | 
|---|---|
Workload Identity Email | 
    선택사항 워크로드 아이덴티티의 클라이언트 이메일 주소입니다. 이 매개변수 또는  워크로드 아이덴티티 이메일 주소로 서비스 계정을 가장하려면 서비스 계정에   | 
  
User's Service Account | 
    선택사항 서비스 계정 키 JSON 파일의 콘텐츠입니다. 이 매개변수 또는  이 매개변수를 구성하려면 서비스 계정을 만들 때 다운로드한 서비스 계정 키 JSON 파일의 전체 콘텐츠를 제공하세요. 서비스 계정을 인증 방법으로 사용하는 방법에 대한 자세한 내용은 서비스 계정 개요를 참고하세요.  | 
  
Quota Project ID | 
    선택사항  Google Cloud API 및 결제에 사용하는 Google Cloud 프로젝트 ID입니다. 이 매개변수를 사용하려면 서비스 계정에  통합은 이 매개변수 값을 모든 API 요청에 연결합니다. 이 매개변수의 값을 설정하지 않으면 통합에서 Google Cloud 서비스 계정에서 할당량 프로젝트 ID를 가져옵니다.  | 
  
Organization ID | 
    선택사항 통합에 사용할 조직 ID입니다. 이 매개변수의 값을 설정하지 않으면 통합에서 Google Cloud 서비스 계정에서 프로젝트 ID를 가져옵니다.  | 
  
Project ID | 
    선택사항 통합에서 사용할 프로젝트 ID입니다. 이 매개변수의 값을 설정하지 않으면 통합에서 Google Cloud 서비스 계정에서 프로젝트 ID를 가져옵니다.  | 
  
Verify SSL | 
    필수 선택하면 통합에서 Cloud Logging에 연결하는 SSL 인증서가 유효한지 확인합니다. 기본적으로 선택되어 있습니다.  | 
  
Google SecOps에서 통합을 구성하는 방법에 대한 안내는 통합 구성을 참고하세요.
필요한 경우 이후 단계에서 변경할 수 있습니다. 통합 인스턴스를 구성한 후 플레이북에서 사용할 수 있습니다. 여러 인스턴스 구성 및 지원에 대한 자세한 내용은 다중 인스턴스 지원을 참고하세요.
작업
Cloud Logging 통합에는 다음 작업이 포함됩니다.
쿼리 실행
쿼리 실행 작업을 사용하여 Cloud Logging에서 맞춤 쿼리를 실행합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
쿼리 실행 작업에는 다음 매개변수가 필요합니다.
| 매개변수 | 설명 | 
|---|---|
Project ID | 
    선택사항 통합에서 사용할 프로젝트 ID입니다. 이 매개변수의 값을 설정하지 않으면 통합에서 Google Cloud 서비스 계정에서 프로젝트 ID를 가져옵니다.  | 
  
Organization ID | 
    선택사항 통합에 사용할 조직 ID입니다. 이 매개변수의 값을 설정하지 않으면 통합에서 Google Cloud 서비스 계정에서 프로젝트 ID를 가져옵니다.  | 
  
Query | 
    필수 로그를 찾는 쿼리입니다.  | 
  
Time Frame | 
    선택사항 결과를 가져올 기간입니다. 
 가능한 값은 다음과 같습니다. 
 Last Hour입니다. | 
  
Start Time | 
    선택사항 결과를 가져올 시작 시간입니다. 
 이 매개변수를 구성하려면 ISO 8601 형식을 사용하세요.  | 
  
End Time | 
    선택사항 결과를 가져올 종료 시간입니다. 이 매개변수의 값을 설정하지 않고  이 매개변수를 구성하려면 ISO 8601 형식을 사용하세요.  | 
  
Max Results To Return | 
    선택사항 반환할 최대 결과 수입니다. 기본값은 50개입니다.  | 
  
작업 출력
쿼리 실행 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 | 
|---|---|
| 케이스 월 연결 | 사용할 수 없음 | 
| 케이스 월 링크 | 사용할 수 없음 | 
| 케이스 월 테이블 | 사용할 수 없음 | 
| 보강 테이블 | 사용할 수 없음 | 
| JSON 결과 | 사용 가능 | 
| 출력 메시지 | 사용 가능 | 
| 스크립트 결과 | 사용 가능 | 
JSON 결과
다음 예에서는 쿼리 실행 작업을 사용할 때 수신되는 JSON 결과 출력을 설명합니다.
[{
    "protoPayload": {
        "@type": "type.googleapis.com/google.cloud.audit.AuditLog",
        "authenticationInfo": {
            "principalEmail": "system:clouddns"
        },
        "authorizationInfo": [
            {
                "granted": true,
                "permission": "io.k8s.coordination.v1.leases.update",
                "resource": "coordination.k8s.io/v1/namespaces/kube-system/leases/clouddns-lock"
            }
        ],
        "methodName": "io.k8s.coordination.v1.leases.update",
        "requestMetadata": {
            "callerIp": "192.0.2.6",
            "callerSuppliedUserAgent": "clouddns-leader-election"
        },
        "resourceName": "coordination.k8s.io/v1/namespaces/kube-system/leases/clouddns-lock",
        "serviceName": "k8s.io",
        "status": {
            "code": 0
        }
    },
    "insertId": "ID",
    "resource": {
        "type": "k8s_cluster",
        "labels": {
            "cluster_name": "CLUSTER_NAME",
            "project_id": "PROJECT_ID",
            "location": "us-central1"
        }
    },
    "timestamp": "2024-09-18T09:46:38.647428Z",
    "labels": {
        "authorization.k8s.io/reason": "RBAC: allowed by ClusterRoleBinding \"system:clouddns\" of ClusterRole \"system:clouddns-role\" to User \"system:clouddns\"",
        "authorization.k8s.io/decision": "allow"
    },
    "logName": "projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity",
    "operation": {
        "id": "ID",
        "producer": "k8s.io",
        "first": true,
        "last": true
    },
    "receiveTimestamp": "2024-09-18T09:46:39.063264993Z"
}]
출력 메시지
쿼리 실행 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 | 
|---|---|
 
  | 
      작업이 완료되었습니다. | 
Error executing action "Execute Query". Reason:
      ERROR_REASON | 
      작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인합니다.  | 
    
스크립트 결과
다음 표에서는 Execute Query 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 | 
|---|---|
is_success | 
      True 또는 False | 
    
핑
Ping 작업을 사용하여 Cloud Logging에 대한 연결을 테스트합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
없음
작업 출력
Ping 작업은 다음 출력을 제공합니다.
| 작업 출력 유형 | 가용성 | 
|---|---|
| 케이스 월 연결 | 사용할 수 없음 | 
| 케이스 월 링크 | 사용할 수 없음 | 
| 케이스 월 테이블 | 사용할 수 없음 | 
| 보강 테이블 | 사용할 수 없음 | 
| JSON 결과 | 사용할 수 없음 | 
| 출력 메시지 | 사용 가능 | 
| 스크립트 결과 | 사용 가능 | 
출력 메시지
Ping 작업은 다음 출력 메시지를 제공합니다.
| 출력 메시지 | 메시지 설명 | 
|---|---|
Successfully connected to the Cloud Logging server with
      the provided connection parameters! | 
      작업이 완료되었습니다. | 
Failed to connect to the Cloud Logging server! Error is
      ERROR_REASON | 
      작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인합니다.  | 
    
스크립트 결과
다음 표에서는 Ping 작업을 사용할 때 스크립트 결과 출력의 값을 설명합니다.
| 스크립트 결과 이름 | 값 | 
|---|---|
is_success | 
      True 또는 False | 
    
도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가로부터 답변을 받으세요.