RealtimeDatabaseAuditMetadata

FirebaseRealtimeDatabaseAuditMetaData 會做為新的 protoPayload.metadata 訊息的一部分顯示。

JSON 表示法
{
  "requestType": enum (RealtimeDatabaseAuditMetadata.RequestType),
  "protocol": enum (RealtimeDatabaseAuditMetadata.Protocol),
  "restMetadata": {
    object (RealtimeDatabaseAuditMetadata.RestMetadata)
  },
  "precondition": {
    object (RealtimeDatabaseAuditMetadata.Precondition)
  },
  "executeDuration": Duration,
  "pendingDuration": Duration,
  "path": string,

  // Union field operation_metadata can be only one of the following:
  "queryMetadata": {
    object (RealtimeDatabaseAuditMetadata.QueryMetadata)
  },
  "writeMetadata": {
    object (RealtimeDatabaseAuditMetadata.WriteMetadata)
  }
  // End of list of possible types for union field operation_metadata.
  "estimatedPayloadSizeBytes": int64
}
欄位
requestType

enum (RealtimeDatabaseAuditMetadata.RequestType)

保留即時與 REST 作業之間的區別。與 RTDB 分析器輸出內容不同,RTDB 的 Cloud 稽核資料存取記錄會將 realtime-*rest-* 作業收合為 ReadWriteUpdate 方法。

protocol

enum (RealtimeDatabaseAuditMetadata.Protocol)

儲存使用的通訊協定。

restMetadata

object (RealtimeDatabaseAuditMetadata.RestMetadata)

只與 REST 要求相關的詳細資料。

precondition

object (RealtimeDatabaseAuditMetadata.Precondition)

Update 的選用先決條件。其他方法均不存在。

executeDuration

Duration

RTDB 伺服器業務執行時間。不適用於:ConnectDisconnectUnlisten

pendingDuration

Duration

RTDB 伺服器在執行前排入佇列的時間。不適用於伺服器或 RunOnDisconnect 啟動的 Unlisten

path

string

存取的資料路徑。不適用於:ConnectDisconnectRunOnDisconnect

聯集欄位 operation_metadata。進一步瞭解 ListenReadUpdateoperation_metadata 只能採用下列其中一種設定:
queryMetadata

object (RealtimeDatabaseAuditMetadata.QueryMetadata)

ListenRead 的中繼資料資訊。

writeMetadata

object (RealtimeDatabaseAuditMetadata.WriteMetadata)

Update 的中繼資料資訊。

estimatedPayloadSizeBytes

int64

已稽核作業的預估回應大小,以位元組為單位。請勿用於計費。不適用於:ConnectDisconnectUnlistenOnDisconnectCancel

RealtimeDatabaseAuditMetadata.QueryMetadata

QueryMetadata 包含針對 ListenRead 傳送的查詢相關額外詳細資料。

JSON 表示法
{
  "orderBy": string,
  "direction": enum (RealtimeDatabaseAuditMetadata.QueryMetadata.Direction),
  "startAt": {
    object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)
  },
  "endAt": {
    object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)
  },
  "equalTo": {
    object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)
  },
  "unindexed": boolean,
  "limit": integer
}
欄位
orderBy

string

查詢是如何排序?可能的值:$key$priority$value<path>

direction

enum (RealtimeDatabaseAuditMetadata.QueryMetadata.Direction)

如果使用 limitToLast,則設為 ASCENDING。如果使用 limitToFirst,則設為 DESCENDING。如果兩者皆未使用,但使用了 startAtstartAfterDESCENDING。在其他情況下,ASCENDING

startAt

object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)

查詢起點。

endAt

object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)

查詢的終點。

equalTo

object (RealtimeDatabaseAuditMetadata.QueryMetadata.Bound)

如有指定,查詢結果只會包含符合指定值的子項。

unindexed

boolean

如果為 true,RTDB 不會使用伺服器端索引為查詢提供資料。這表示 RTDB 傳送的資料可能會超過查詢所選的數量。否則就不會顯示。

limit

integer

查詢僅限前 limit 個子項數量。如果未使用 limitToLastlimitToFirst,就不會出現。

RealtimeDatabaseAuditMetadata.QueryMetadata.Bound

Bound 是具有備用鍵的查詢端點。

JSON 表示法
{
  "value": value,
  "key": string,
  "exclusive": boolean
}
欄位
value

value (Value format)

資料庫執行個體的值。

key

string

備用金鑰。如果按照 $key 排序,系統會略過這個欄位,因為其內容會改儲存在 value 中。

exclusive

boolean

如果使用 startAfterendBefore,則為「true」。在這種情況下,查詢結果不會包含端點值。

RealtimeDatabaseAuditMetadata.WriteMetadata

WriteMetadata 包含有關 Update 的其他詳細資料。

JSON 表示法
{
  "paths": {
    string: string,
    ...
  }
}
欄位
paths

map (key: string, value: int64)

在多路徑更新中修改的路徑,以及每個路徑寫入的資料大小。

RealtimeDatabaseAuditMetadata.RestMetadata

RestMetadata 包含只與 REST 要求相關的詳細資料。

JSON 表示法
{
  "requestUri": string,
  "requestMethod": enum (RealtimeDatabaseAuditMetadata.RestMetadata.Method)
}
欄位
requestUri

string

完整的資料庫網址,包括路徑:https://[NAMESPACE].us-central1.firebasedatabase.app/a/b/c.json

requestMethod

enum (RealtimeDatabaseAuditMetadata.RestMetadata.Method)

針對 REST 要求,系統會使用哪種方法。如為非 REST 要求或無法使用方法,則留空。

RealtimeDatabaseAuditMetadata.Precondition

Precondition 說明 Update 使用的先決條件 (如果有的話)。RTDB 中較常見的先決條件 Update 做為交易。

JSON 表示法
{
  "preconditionType": enum (RealtimeDatabaseAuditMetadata.Precondition.PreconditionType),
  "hash": string
}
欄位
preconditionType

enum (RealtimeDatabaseAuditMetadata.Precondition.PreconditionType)

使用的先決條件類型。

hash

string

用戶端預期位於 path 的資料的 SHA1 雜湊。如為 REST 要求,這個值會透過 ETAG 標頭傳送。