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 عملیات realtime-* و rest-* را در روش‌های Read ، Write و Update جمع می‌کنند.

protocol

enum ( RealtimeDatabaseAuditMetadata.Protocol )

پروتکل مورد استفاده را ذخیره کنید.

restMetadata

object ( RealtimeDatabaseAuditMetadata.RestMetadata )

جزئیات فقط مربوط به درخواست های REST است.

precondition

object ( RealtimeDatabaseAuditMetadata.Precondition )

یک پیش شرط اختیاری برای Update . برای هیچ روش دیگری وجود ندارد.

executeDuration

Duration

زمان اجرای کسب و کار سرور RTDB. برای: Connect ، Disconnect ، یا Unlisten وجود ندارد.

pendingDuration

Duration

زمان صف سرور RTDB قبل از شروع اجرا. وجود ندارد برای: Unlisten که توسط سرور یا RunOnDisconnect آغاز شده است.

path

string

مسیر داده ای که به آن دسترسی پیدا کرد. برای: Connect ، Disconnect یا RunOnDisconnect وجود ندارد.

operation_metadata میدانی اتحادیه - فراداده. جزئیات بیشتر درباره ListenRead s یا Update s. operation_metadata تنها می تواند یکی از موارد زیر باشد:
queryMetadata

object ( RealtimeDatabaseAuditMetadata.QueryMetadata )

اطلاعات فراداده برای Listen یا Read .

writeMetadata

object ( RealtimeDatabaseAuditMetadata.WriteMetadata )

اطلاعات فراداده برای Update

estimatedPayloadSizeBytes

int64

اندازه پاسخ تخمینی عملیات حسابرسی شده بر حسب بایت. برای مقاصد صورتحساب استفاده نکنید. برای: Connect ، Disconnect ، Unlisten ، یا OnDisconnectCancel وجود ندارد.

RealtimeDatabaseAuditMetadata.QueryMetadata

QueryMetadata شامل جزئیات بیشتری در مورد درخواست های ارسال شده برای Listen s یا Read s است.

نمایندگی 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 . اگر هیچ کدام استفاده نمی شود، اما startAt یا startAfter استفاده می شود، DESCENDING . در همه موارد دیگر، ASCENDING .

startAt

object ( RealtimeDatabaseAuditMetadata.QueryMetadata.Bound )

نقطه شروع پرس و جو

endAt

object ( RealtimeDatabaseAuditMetadata.QueryMetadata.Bound )

نقطه پایان پرس و جو

equalTo

object ( RealtimeDatabaseAuditMetadata.QueryMetadata.Bound )

در صورت مشخص شدن، نتایج پرس و جو فقط شامل فرزندانی می شود که با مقدار مشخص شده مطابقت دارند.

unindexed

boolean

اگر درست باشد، RTDB از یک نمایه سمت سرور برای ارائه داده برای پرس و جو استفاده نمی کند. این به این معنی است که RTDB ممکن است داده های بیشتری از آنچه پرس و جو انتخاب می کند ارسال کند. در غیر این صورت حضور ندارد.

limit

integer

پرس و جو به اولین یا آخرین تعداد limit فرزندان محدود شد. زمانی که limitToLast و limitToFirst استفاده نمی شود وجود ندارد.

RealtimeDatabaseAuditMetadata.QueryMetadata.Bound

Bound یک نقطه پایانی پرس و جو با یک کلید بازگشتی است.

نمایندگی JSON
{
  "value": value,
  "key": string,
  "exclusive": boolean
}
زمینه های
value

value ( Value format)

مقداری از نمونه پایگاه داده.

key

string

کلید بازگشتی در صورت سفارش با $key ، این فیلد حذف می شود زیرا محتوای آن در value ذخیره می شود.

exclusive

boolean

اگر startAfter یا endBefore استفاده شده باشد درست است. در این حالت، نتایج پرس و جو حاوی مقادیر نقطه پایانی نخواهد بود.

RealtimeDatabaseAuditMetadata.WriteMetadata

WriteMetadata شامل جزئیات بیشتری در مورد Update s است.

نمایندگی 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 استفاده شده است. Update با پیش شرط هایی که بیشتر در RTDB به عنوان تراکنش ها شناخته می شوند.

نمایندگی JSON
{
  "preconditionType": enum (RealtimeDatabaseAuditMetadata.Precondition.PreconditionType),
  "hash": string
}
زمینه های
preconditionType

enum ( RealtimeDatabaseAuditMetadata.Precondition.PreconditionType )

نوع پیش شرط مورد استفاده

hash

string

یک هش SHA1 از داده هایی که مشتری انتظار دارد در path باشد. برای درخواست های REST، این مقدار در هدر ETAG ارسال می شود.