Datastore 감사 로깅

이 문서에서는 Datastore의 감사 로깅을 설명합니다. Google Cloud 서비스는 Google Cloud 리소스 내의 관리 및 액세스 활동을 기록하는 감사 로그를 생성합니다. Cloud 감사 로그에 대한 자세한 내용은 다음을 참조하세요.

참고

감사 로깅을 구성할 때 서비스 이름 datastore.googleapis.comdatastore.googleapis.comfirestore.googleapis.com API 호출 모두에 대한 로그를 구성합니다.

DATA_READ 또는 DATA_WRITE 요청을 처리하는 데 걸린 시간을 보려면 AuditLogmetadata 객체 내 processing_duration 필드를 참조하세요. processing_duration은 데이터베이스가 실제로 요청을 처리하는 데 걸린 시간을 설명합니다. 이 값은 최종 사용자 지연 시간보다 작습니다. 특히 네트워크 오버헤드를 포함하지 않습니다.

서비스 이름

Datastore 감사 로그는 서비스 이름 datastore.googleapis.com을 사용합니다. 이 서비스에 대한 필터:

    protoPayload.serviceName="datastore.googleapis.com"
  

권한 유형별 메서드

각 IAM 권한에는 type 속성이 포함되며 그 값은 네 가지 값(ADMIN_READ, ADMIN_WRITE, DATA_READ, DATA_WRITE) 중 하나일 수 있는 열거형입니다. 메서드를 호출하면 Datastore에서 메서드를 수행하는 데 필요한 권한의 type 속성에 따라 범주가 달라지는 감사 로그를 생성합니다. DATA_READ, DATA_WRITE, ADMIN_READtype 속성 값을 가진 IAM 권한이 필요한 메서드는 데이터 액세스 감사 로그를 생성합니다. type 속성 값이 ADMIN_WRITE인 IAM 권한이 필요한 메서드는 관리자 활동 감사 로그를 생성합니다.

권한 유형 메서드
ADMIN_READ google.datastore.admin.v1.DatastoreAdmin.GetIndex
google.datastore.admin.v1.DatastoreAdmin.ListIndexes
google.longrunning.Operations.GetOperation
google.longrunning.Operations.ListOperations
ADMIN_WRITE google.datastore.admin.v1.DatastoreAdmin.CreateIndex
google.datastore.admin.v1.DatastoreAdmin.DeleteIndex
google.datastore.admin.v1.DatastoreAdmin.ExportEntities
google.datastore.admin.v1.DatastoreAdmin.ImportEntities
google.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities
google.datastore.admin.v1beta1.DatastoreAdmin.ImportEntities
google.longrunning.Operations.CancelOperation
google.longrunning.Operations.DeleteOperation
DATA_READ google.datastore.v1.Datastore.BeginTransaction
google.datastore.v1.Datastore.Lookup
google.datastore.v1.Datastore.Rollback
google.datastore.v1.Datastore.RunAggregationQuery
google.datastore.v1.Datastore.RunQuery
google.datastore.v1beta3.Datastore.BeginTransaction
google.datastore.v1beta3.Datastore.Lookup
google.datastore.v1beta3.Datastore.Rollback
google.datastore.v1beta3.Datastore.RunAggregationQuery
google.datastore.v1beta3.Datastore.RunQuery
DATA_WRITE google.datastore.v1.Datastore.AllocateIds
google.datastore.v1.Datastore.Commit
google.datastore.v1.Datastore.ReserveIds
google.datastore.v1beta3.Datastore.AllocateIds
google.datastore.v1beta3.Datastore.Commit
google.datastore.v1beta3.Datastore.ReserveIds

API 인터페이스 감사 로그

메서드별 평가 방법과 평가 대상 권한에 대한 자세한 내용은 Datastore의 Identity and Access Management 문서를 참조하세요.

google.datastore.admin.v1.DatastoreAdmin

다음 감사 로그는 google.datastore.admin.v1.DatastoreAdmin에 속하는 메서드와 연결되어 있습니다.

CreateIndex

DeleteIndex

ExportEntities

GetIndex

ImportEntities

ListIndexes

google.datastore.admin.v1beta1.DatastoreAdmin

다음 감사 로그는 google.datastore.admin.v1beta1.DatastoreAdmin에 속하는 메서드와 연결되어 있습니다.

ExportEntities

ImportEntities

google.datastore.v1.Datastore

다음 감사 로그는 google.datastore.v1.Datastore에 속하는 메서드와 연결되어 있습니다.

AllocateIds

  • 메서드: google.datastore.v1.Datastore.AllocateIds
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.entities.allocateIds - DATA_WRITE
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1.Datastore.AllocateIds"

BeginTransaction

  • 메서드: google.datastore.v1.Datastore.BeginTransaction
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.databases.get - DATA_READ
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1.Datastore.BeginTransaction"

Commit

  • 메서드: google.datastore.v1.Datastore.Commit
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.databases.get - DATA_READ
    • datastore.entities.create - DATA_WRITE
    • datastore.entities.delete - DATA_WRITE
    • datastore.entities.update - DATA_WRITE
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1.Datastore.Commit"

Lookup

  • 메서드: google.datastore.v1.Datastore.Lookup
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.entities.get - DATA_READ
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1.Datastore.Lookup"

ReserveIds

  • 메서드: google.datastore.v1.Datastore.ReserveIds
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.entities.allocateIds - DATA_WRITE
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1.Datastore.ReserveIds"

Rollback

  • 메서드: google.datastore.v1.Datastore.Rollback
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.databases.get - DATA_READ
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1.Datastore.Rollback"

RunAggregationQuery

  • 메서드: google.datastore.v1.Datastore.RunAggregationQuery
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.entities.get - DATA_READ
    • datastore.entities.list - DATA_READ
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1.Datastore.RunAggregationQuery"

RunQuery

  • 메서드: google.datastore.v1.Datastore.RunQuery
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.entities.get - DATA_READ
    • datastore.entities.list - DATA_READ
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1.Datastore.RunQuery"

google.datastore.v1beta3.Datastore

다음 감사 로그는 google.datastore.v1beta3.Datastore에 속하는 메서드와 연결되어 있습니다.

AllocateIds

  • 메서드: google.datastore.v1beta3.Datastore.AllocateIds
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.databases.get - DATA_READ
    • datastore.entities.allocateIds - DATA_WRITE
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1beta3.Datastore.AllocateIds"

BeginTransaction

  • 메서드: google.datastore.v1beta3.Datastore.BeginTransaction
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.databases.get - DATA_READ
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1beta3.Datastore.BeginTransaction"

Commit

  • 메서드: google.datastore.v1beta3.Datastore.Commit
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.entities.create - DATA_WRITE
    • datastore.entities.delete - DATA_WRITE
    • datastore.entities.update - DATA_WRITE
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1beta3.Datastore.Commit"

Lookup

  • 메서드: google.datastore.v1beta3.Datastore.Lookup
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.entities.get - DATA_READ
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1beta3.Datastore.Lookup"

ReserveIds

  • 메서드: google.datastore.v1beta3.Datastore.ReserveIds
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.databases.get - DATA_READ
    • datastore.entities.allocateIds - DATA_WRITE
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1beta3.Datastore.ReserveIds"

Rollback

  • 메서드: google.datastore.v1beta3.Datastore.Rollback
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.databases.get - DATA_READ
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1beta3.Datastore.Rollback"

RunAggregationQuery

  • 메서드: google.datastore.v1beta3.Datastore.RunAggregationQuery
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.entities.get - DATA_READ
    • datastore.entities.list - DATA_READ
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1beta3.Datastore.RunAggregationQuery"

RunQuery

  • 메서드: google.datastore.v1beta3.Datastore.RunQuery
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.entities.get - DATA_READ
    • datastore.entities.list - DATA_READ
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.datastore.v1beta3.Datastore.RunQuery"

google.longrunning.Operations

다음 감사 로그는 google.longrunning.Operations에 속하는 메서드와 연결되어 있습니다.

CancelOperation

  • 메서드: google.longrunning.Operations.CancelOperation
  • 감사 로그 유형: 관리자 활동
  • 권한:
    • datastore.operations.cancel - ADMIN_WRITE
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.longrunning.Operations.CancelOperation"

DeleteOperation

  • 메서드: google.longrunning.Operations.DeleteOperation
  • 감사 로그 유형: 관리자 활동
  • 권한:
    • datastore.operations.delete - ADMIN_WRITE
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.longrunning.Operations.DeleteOperation"

GetOperation

  • 메서드: google.longrunning.Operations.GetOperation
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.operations.get - ADMIN_READ
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.longrunning.Operations.GetOperation"

ListOperations

  • 메서드: google.longrunning.Operations.ListOperations
  • 감사 로그 유형: 데이터 액세스
  • 권한:
    • datastore.operations.list - ADMIN_READ
  • 메서드가 장기 실행 또는 스트리밍 작업인지 여부: 아니요.
  • 이 메서드에 대한 필터:: protoPayload.methodName="google.longrunning.Operations.ListOperations"

감사 로그를 생성하지 않는 메서드

메서드는 다음 중 하나 이상의 이유로 인해 감사 로그를 생성하지 않을 수 있습니다.

  • 상당한 로그 생성 및 스토리지 비용이 포함된 대용량 메서드입니다.
  • 감사 값이 낮습니다.
  • 또 다른 감사 또는 플랫폼 로그에서 이미 메서드 범위를 제공합니다.

다음 메서드는 감사 로그를 생성하지 않습니다.

  • google.longrunning.Operations.WaitOperation