감사 로그에서 VPC 서비스 제어 오류 검색

이 페이지에서는 Cloud Logging을 사용하여 VPC 서비스 제어 오류를 찾는 방법을 설명합니다.

VPC 서비스 제어는 멀티 테넌트 Google Cloud 서비스를 격리하여 데이터 무단 반출 위험을 줄일 수 있게 도와줍니다. 자세한 내용은 VPC 서비스 제어 개요를 참조하세요.

VPC 서비스 제어로 인한 오류인지 확인

VPC 서비스 제어를 사용하면 Google Cloud 속성을 수정할 수 있고 다양한 서비스에 광범위한 영향을 미칠 수 있습니다. 따라서 특히 조사할 대상을 모르면 문제를 디버깅하기 어려울 수 있습니다.

서비스 경계 변경사항은 전파되고 적용되는 데 최대 30분이 걸릴 수 있습니다. 변경사항이 전파되었으면 명시적으로 허용되지 않은 한 경계에서 제한된 서비스에 대한 액세스가 경계 범위를 넘을 수 없습니다.

오류가 VPC 서비스 제어와 관련되었는지 파악하려면 VPC 서비스 제어를 사용 설정한 후 사용하려는 프로젝트 및 서비스에 적용했는지 확인하세요. 프로젝트 및 서비스가 VPC 서비스 제어로 보호되는지 확인하려면 해당 리소스 계층 구조 수준에서 VPC 서비스 제어 정책을 확인합니다.

서비스 경계 내에 있는 프로젝트에서 VPC 서비스 제어에 의해 제한된 서비스로 표시된 서비스를 간접적으로 사용하는 시나리오 예시를 고려해보세요. 이 경우에는 VPC 서비스 제어가 액세스를 거부할 수 있습니다.

일반적으로 서비스는 종속 항목의 오류 메시지를 전파합니다. 다음 오류 중 하나가 발생하면 VPC 서비스 제어에 문제가 있음을 나타냅니다.

  • Cloud Storage: 403: Request violates VPC Service Controls.

  • BigQuery: 403: VPC Service Controls: Request is prohibited by organization's policy.

  • 기타 서비스: 403: Request is prohibited by organization's policy.

오류의 고유 ID 사용

Google Cloud 콘솔과 달리 gcloud 명령줄 도구는 VPC 서비스 제어 오류의 고유 ID를 반환합니다. 다른 오류의 로그 항목을 찾으려면 메타데이터를 사용하여 로그를 필터링하세요.

VPC 서비스 제어에서 생성된 오류에는 관련 감사 로그를 식별하는 데 사용되는 고유 ID가 포함됩니다.

고유 ID를 사용하여 오류에 대한 정보를 가져오려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 오류를 트리거한 서비스 계정 내에 있는 프로젝트의 Cloud Logging 페이지로 이동합니다.

    Cloud Logging으로 이동

  2. 검색 필터 필드에 오류의 고유 ID를 입력합니다.

관련 로그 항목을 볼 수 있습니다.

메타데이터를 사용하여 로그 필터링

로그 탐색기를 사용하면 VPC 서비스 제어와 관련된 오류를 찾을 수 있습니다. Logging 쿼리 언어를 사용하면 로그를 검색할 수 있습니다. 쿼리 빌드에 대한 자세한 내용은 Logging 쿼리 언어를 사용하여 쿼리 빌드를 참조하세요.

콘솔

Logging에서 지난 24시간 동안의 VPC 서비스 제어 오류를 확인하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 Cloud Logging 페이지로 이동합니다.

    Cloud Logging으로 이동

  2. 프로젝트 위치가 서비스 경계 내에 있는지 확인합니다.

  3. 검색 필터 필드에 다음을 입력합니다.

    protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"
    
  4. 리소스 메뉴에서 감사를 받은 리소스를 선택합니다.

  5. 시간 범위 선택자 메뉴에서 지난 24시간을 선택합니다.

  6. 선택사항: 서로 다른 기간 중에 발생한 VPC 서비스 제어 오류를 찾으려면 시간 범위 선택자 메뉴를 사용합니다.

gcloud

  • 지난 24시간 동안의 VPC 서비스 제어 오류를 확인하려면 다음 명령어를 실행합니다.

    gcloud logging read 'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"'
    

    기본적으로 read 명령어는 지난 24시간으로 제한됩니다. 서로 다른 기간의 VPC 서비스 제어 로그를 가져오려면 다음 명령어 중 하나를 사용합니다.

  • 현재 날짜로부터 특정 기간 내에 생성된 로그를 검색하려면 다음 명령어를 실행합니다.

    gcloud logging read \
    'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"' \
      --freshness=DURATION
    

    DURATION은 형식이 지정된 기간입니다. 형식 지정에 대한 자세한 내용은 gcloud CLI에 대한 상대 기간 및 시간 형식을 참조하세요.

  • 이전 한 주 동안 발생한 모든 VPC 서비스 제어 오류를 검색하려면 다음 명령어를 실행합니다.

    gcloud logging read \
    'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"' \
      --freshness=7d
    
  • 특정 날짜 사이에 생성된 로그를 검색하려면 다음 명령어를 실행합니다.

    gcloud logging read \
    'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata" AND
    timestamp>="START_DATETIME" AND
    timestamp<="END_DATETIME"'
    

    START_DATETIMEEND_DATETIME 형식은 날짜 및 시간 문자열로 지정됩니다. 형식 지정에 대한 자세한 내용은 gcloud CLI의 절대 날짜 및 시간 형식을 참조하세요.

    예를 들어 2019년 3월 22일부터 2019년 3월 26일까지 발생한 모든 VPC 서비스 제어 오류를 확인하려면 다음을 사용하세요.

    gcloud logging read \
    'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata" AND
      timestamp>="2019-03-22T23:59:59Z" AND
      timestamp<="2019-03-26T00:00:00Z"'
    

다음 단계