تسجيل التدقيق لإدارة Firebase

توضح هذه الصفحة سجلات التدقيق التي أنشأها Firebase كجزء من سجلات التدقيق السحابي .

ملخص

تكتب خدمات Firebase سجلات التدقيق لمساعدتك في الإجابة على الأسئلة، "من فعل ماذا وأين ومتى؟". هذه هي سجلات تدقيق السحابة، المقدمة كجزء من مشروع Google Cloud المتصل بمشروع Firebase الخاص بك .

يحتوي كل مشروع من مشروعات Firebase الخاصة بك على سجلات التدقيق الخاصة بالموارد الموجودة مباشرة داخل المشروع فقط.

للحصول على نظرة عامة على سجلات تدقيق السحابة، راجع نظرة عامة على سجلات تدقيق السحابة . للحصول على فهم أعمق لتنسيق سجل التدقيق، راجع فهم سجلات التدقيق .

سجلات التدقيق المتاحة

تتوفر الأنواع التالية من سجلات التدقيق لإدارة Firebase:

  • سجلات تدقيق نشاط المشرف

    يتضمن عمليات "كتابة المسؤول" التي تكتب بيانات التعريف أو معلومات التكوين.

    لا يمكنك تعطيل سجلات تدقيق نشاط المشرف.

  • سجلات تدقيق الوصول إلى البيانات

    يتضمن عمليات "قراءة المشرف" التي تقرأ بيانات التعريف أو معلومات التكوين. يتضمن أيضًا عمليات "قراءة البيانات" و"كتابة البيانات" التي تقرأ أو تكتب البيانات المقدمة من المستخدم.

    لتلقي سجلات تدقيق الوصول إلى البيانات، يجب تمكينها بشكل صريح.

للحصول على أوصاف أكمل لأنواع سجل التدقيق، راجع أنواع سجلات التدقيق .

العمليات المدققة

يلخص ما يلي عمليات واجهة برمجة التطبيقات (API) التي تتوافق مع كل نوع من أنواع سجل التدقيق في إدارة Firebase:

فئة سجلات التدقيق عمليات إدارة Firebase
عمليات المشروع
نشاط المشرف AddFirebase
UpdateFirebaseProject
FinalizeDefaultLocation
الوصول إلى البيانات (ADMIN_READ) GetFirebaseProject
قائمة المواقع المتاحة
GetAdminSdkConfig
SearchFirebaseApps
عمليات تطبيق iOS
نشاط المشرف CreateIosApp
UpdateIosApp
الوصول إلى البيانات (ADMIN_READ) GetIosApp
ListIosApps
GetIosAppConfig
عمليات تطبيق أندرويد
نشاط المشرف إنشاءAndroidApp
تحديثAndroidApp
إنشاء شهادة شا
حذف شهادة شا
الوصول إلى البيانات (ADMIN_READ) GetAndroidApp
قائمةAndroidApps
الحصول على AndroidAppConfig
ListShaCertificates
عمليات تطبيقات الويب
نشاط المشرف CreateWebApp
UpdateWebApp
الوصول إلى البيانات (ADMIN_READ) GetWebApp
ListWebApps
GetWebAppConfig

تنسيق سجل التدقيق

تتضمن إدخالات سجل التدقيق العناصر التالية:

  • إدخال السجل نفسه، وهو كائن من النوع LogEntry . تتضمن الحقول المفيدة ما يلي:

    • يحتوي logName على معرف المورد ونوع سجل التدقيق.
    • يحتوي resource على هدف العملية التي تم تدقيقها.
    • يحتوي timestamp على وقت العملية التي تم تدقيقها.
    • يحتوي protoPayload على المعلومات المدققة.
  • بيانات تسجيل التدقيق، وهي كائن AuditLog الموجود في حقل protoPayload الخاص بإدخال السجل.

  • معلومات التدقيق الاختيارية الخاصة بالخدمة، وهي كائن خاص بالخدمة. بالنسبة لعمليات التكامل الأقدم، يتم الاحتفاظ بهذا الكائن في حقل serviceData لكائن AuditLog ؛ تستخدم عمليات التكامل الأحدث حقل metadata .

بالنسبة للحقول الأخرى في هذه الكائنات وكيفية تفسيرها، قم بمراجعة فهم سجلات التدقيق .

اسم السجل

تشير أسماء موارد سجلات تدقيق السحابة إلى مشروع Firebase أو كيان Google Cloud الآخر الذي يمتلك سجلات التدقيق، وما إذا كان السجل يحتوي على بيانات تسجيل تدقيق نشاط المشرف أو الوصول إلى البيانات أو رفض السياسة أو حدث النظام. على سبيل المثال، يعرض ما يلي أسماء السجلات لسجلات تدقيق نشاط المسؤول على مستوى المشروع وسجلات تدقيق الوصول إلى البيانات الخاصة بالمؤسسة. تشير المتغيرات إلى معرفات مشروع Firebase والمؤسسة.

projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access

اسم الخدمة

تستخدم سجلات تدقيق إدارة Firebase اسم الخدمة firebase.googleapis.com .

للحصول على قائمة كاملة بجميع أسماء خدمات Cloud Logging API ونوع الموارد المراقبة المقابلة لها، راجع تعيين الخدمات إلى الموارد .

أنواع الموارد

تستخدم سجلات تدقيق إدارة Firebase نوع المورد audited_resource لجميع سجلات التدقيق.

للحصول على قائمة بجميع أنواع الموارد الخاضعة للمراقبة في Cloud Logging والمعلومات الوصفية، راجع أنواع الموارد الخاضعة للمراقبة .

تمكين تسجيل التدقيق

يتم تمكين سجلات تدقيق نشاط المسؤول دائمًا؛ لا يمكنك تعطيلها.

يتم تعطيل سجلات تدقيق الوصول إلى البيانات بشكل افتراضي ولا تتم كتابتها ما لم يتم تمكينها بشكل صريح (الاستثناء هو سجلات تدقيق الوصول إلى البيانات لـ BigQuery، والتي لا يمكن تعطيلها).

للحصول على إرشادات حول تمكين بعض أو كل سجلات تدقيق الوصول إلى البيانات، راجع تكوين سجلات الوصول إلى البيانات .

الأذونات والأدوار

تحدد أذونات وأدوار Cloud IAM قدرتك على الوصول إلى بيانات سجلات التدقيق في موارد Google Cloud.

عند تحديد الأذونات والأدوار الخاصة بالتسجيل التي تنطبق على حالة الاستخدام الخاصة بك، ضع في اعتبارك ما يلي:

  • يمنحك دور عارض السجلات ( roles/logging.viewer ) حق الوصول للقراءة فقط إلى سجلات تدقيق نشاط المسؤول ورفض السياسة وسجلات أحداث النظام. إذا كان لديك هذا الدور فقط، فلن تتمكن من عرض سجلات تدقيق الوصول إلى البيانات الموجودة في المجموعة _Default .

  • يتضمن دور عارض السجلات الخاصة (roles/logging.privateLogViewer ) الأذونات الموجودة في roles/logging.viewer ، بالإضافة إلى القدرة على قراءة سجلات تدقيق الوصول إلى البيانات في المجموعة _Default .

    لاحظ أنه إذا تم تخزين هذه السجلات الخاصة في مجموعات محددة من قبل المستخدم، فيمكن لأي مستخدم لديه أذونات لقراءة السجلات في تلك المجموعات قراءة السجلات الخاصة. لمزيد من المعلومات حول مجموعات السجل، راجع نظرة عامة على التوجيه والتخزين .

لمزيد من المعلومات حول أذونات Cloud IAM والأدوار التي تنطبق على بيانات سجلات التدقيق، راجع التحكم في الوصول .

عرض السجلات

للعثور على سجلات التدقيق وعرضها، يلزمك معرفة معرف مشروع أو مجلد أو مؤسسة Firebase التي تريد عرض معلومات تسجيل التدقيق لها. يمكنك كذلك تحديد حقول LogEntry مفهرسة أخرى، مثل resource.type ؛ للحصول على التفاصيل، قم بمراجعة البحث عن إدخالات السجل بسرعة .

فيما يلي أسماء سجل التدقيق؛ وهي تتضمن متغيرات لمعرفات مشروع أو مجلد أو مؤسسة Firebase:

   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fpolicy

   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Factivity
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fpolicy

   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fpolicy

يمكنك عرض سجلات التدقيق في Cloud Logging باستخدام وحدة تحكم GCP، أو أداة سطر أوامر gcloud ، أو Logging API.

وحدة التحكم

يمكنك استخدام مستكشف السجلات في وحدة تحكم GCP لاسترداد إدخالات سجل التدقيق لمشروعك أو مجلدك أو مؤسستك في Firebase:

  1. في وحدة تحكم GCP، انتقل إلى صفحة التسجيل > مستكشف السجلات .

    انتقل إلى صفحة مستكشف السجلات

  2. في صفحة Logs Explorer ، حدد مشروعًا أو مجلدًا أو مؤسسة موجودة في Firebase.

  3. في جزء منشئ الاستعلام ، قم بما يلي:

    • في نوع المورد ، حدد مورد Google Cloud الذي تريد رؤية سجلات التدقيق الخاصة به.

    • في اسم السجل ، حدد نوع سجل التدقيق الذي تريد رؤيته:

      • بالنسبة لسجلات تدقيق نشاط المسؤول، حدد النشاط .
      • بالنسبة لسجلات تدقيق الوصول إلى البيانات، حدد data_access .
      • بالنسبة لسجلات تدقيق أحداث النظام، حدد system_event .
      • بالنسبة لسجلات التدقيق المرفوضة للسياسة، حدد السياسة .

    إذا لم تظهر لك هذه الخيارات، فهذا يعني عدم توفر أي سجلات تدقيق من هذا النوع في مشروع أو مجلد أو مؤسسة Firebase.

    لمزيد من التفاصيل حول الاستعلام باستخدام Logs Explorer، راجع إنشاء استعلامات السجل .

com.gcloud

توفر أداة سطر الأوامر gcloud واجهة سطر أوامر لواجهة برمجة تطبيقات Cloud Logging. أدخل PROJECT_ID أو FOLDER_ID أو ORGANIZATION_ID صالحًا في كل اسم من أسماء السجل.

لقراءة إدخالات سجل التدقيق على مستوى مشروع Firebase، قم بتشغيل الأمر التالي:

gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" --project=PROJECT_ID

لقراءة إدخالات سجل التدقيق على مستوى المجلد، قم بتشغيل الأمر التالي:

gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" --folder=FOLDER_ID

لقراءة إدخالات سجل التدقيق على مستوى المؤسسة، قم بتشغيل الأمر التالي:

gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" --organization=ORGANIZATION_ID

لمزيد من المعلومات حول استخدام أداة gcloud ، راجع قراءة إدخالات السجل .

واجهة برمجة التطبيقات

عند إنشاء استعلاماتك، استبدل المتغيرات بقيم صالحة، واستبدل اسم أو معرفات سجل التدقيق المناسب على مستوى المشروع أو المجلد أو مستوى المؤسسة كما هو مدرج في أسماء سجل التدقيق. على سبيل المثال، إذا كان استعلامك يتضمن PROJECT_ID ، فيجب أن يشير معرف المشروع الذي تقدمه إلى مشروع Firebase المحدد حاليًا.

لاستخدام Logging API للاطلاع على إدخالات سجل التدقيق، قم بما يلي:

  1. انتقل إلى قسم تجربة واجهة برمجة التطبيقات هذه في الوثائق الخاصة بطريقة entries.list .

  2. ضع ما يلي في الجزء الأساسي للطلب من نموذج تجربة واجهة برمجة التطبيقات هذه . يؤدي النقر فوق هذا النموذج الذي تمت تعبئته مسبقًا إلى ملء نص الطلب تلقائيًا، ولكنك تحتاج إلى توفير PROJECT_ID صالح في كل اسم من أسماء السجل.

    {
      "resourceNames": [
        "projects/PROJECT_ID"
      ],
      "pageSize": 5,
      "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
    }
    
  3. انقر فوق تنفيذ .

لمزيد من التفاصيل حول الاستعلام، راجع تسجيل لغة الاستعلام .

للحصول على مثال لإدخال سجل التدقيق وكيفية العثور على أهم المعلومات فيه، راجع نموذج إدخال سجل التدقيق .

سجلات تدقيق المسار

يمكنك توجيه سجلات التدقيق إلى الوجهات المدعومة بنفس الطريقة التي يمكنك بها توجيه أنواع أخرى من السجلات. فيما يلي بعض الأسباب التي قد تدفعك إلى توجيه سجلات التدقيق الخاصة بك:

  • للاحتفاظ بسجلات التدقيق لفترة زمنية أطول أو لاستخدام إمكانات بحث أكثر قوة، يمكنك توجيه نسخ من سجلات التدقيق إلى Google Cloud Storage، أو BigQuery، أو Google Cloud Pub/Sub. باستخدام Cloud Pub/Sub، يمكنك التوجيه إلى تطبيقات أخرى ومستودعات أخرى وإلى جهات خارجية.

  • لإدارة سجلات التدقيق الخاصة بك عبر مؤسسة بأكملها، يمكنك إنشاء أحواض مجمعة يمكنها توجيه السجلات من أي من مشاريع Firebase أو جميعها في المؤسسة.

  • إذا كانت سجلات تدقيق الوصول إلى البيانات الممكّنة تدفع مشاريع Firebase الخاصة بك إلى تخصيصات السجل الخاصة بك، فيمكنك إنشاء أحواض تستبعد سجلات تدقيق الوصول إلى البيانات من التسجيل.

للحصول على إرشادات حول سجلات التوجيه، راجع تكوين المصارف .

التسعير

سجلات تدقيق نشاط المسؤول وسجلات تدقيق أحداث النظام مجانية.

يتم فرض رسوم على سجلات تدقيق الوصول إلى البيانات وسجلات تدقيق رفض السياسة .

لمزيد من المعلومات حول تسعير Cloud Logging، راجع تسعير مجموعة عمليات Google Cloud: Cloud Logging .