इस दस्तावेज़ में, Cloud Firestore के लिए ऑडिट लॉगिंग के बारे में बताया गया है. Google Cloud सेवाएं, ऑडिट लॉग जनरेट करती हैं. इनमें आपके Google Cloud संसाधनों में की गई एडमिन और ऐक्सेस से जुड़ी गतिविधियों को रिकॉर्ड किया जाता है.
क्लाउड ऑडिट लॉग के बारे में ज़्यादा जानने के लिए, यहां दी गई जानकारी देखें:
- ऑडिट लॉग के टाइप
- ऑडिट लॉग एंट्री का स्ट्रक्चर
- ऑडिट लॉग को सेव और रूट करना
- Cloud Logging की कीमत की खास जानकारी
- डेटा ऐक्सेस के ऑडिट लॉग चालू करना
नोट
ऑडिट लॉगिंग को कॉन्फ़िगर करते समय, सेवा के नाम datastore.googleapis.com का इस्तेमाल करें. इससे datastore.googleapis.com और firestore.googleapis.com.
Once configured, logs for the Cloud Firestore API include the service namefirestore.googleapis.com`, दोनों को कॉन्फ़िगर किया जा सकेगा.
DATA_READ या DATA_WRITE अनुरोध को प्रोसेस करने में लगने वाला समय देखने के लिए, AuditLog के metadata ऑब्जेक्ट में मौजूद processing_duration फ़ील्ड देखें.
processing_duration फ़ील्ड से पता चलता है कि डेटाबेस को अनुरोध प्रोसेस करने में कितना समय लगा. यह असली उपयोगकर्ता की इंतज़ार की अवधि से कम है. खास तौर पर, इसमें नेटवर्क ओवरहेड शामिल नहीं होता.
सेवा का नाम
Cloud Firestore के ऑडिट लॉग, सेवा के नाम के तौर पर firestore.googleapis.com का इस्तेमाल करते हैं.
इस सेवा के लिए फ़िल्टर:
protoPayload.serviceName="firestore.googleapis.com"
अनुमति के टाइप के हिसाब से तरीके
हर IAM अनुमति में एक type प्रॉपर्टी होती है. इसकी वैल्यू एक enum होती है, जो इन चार वैल्यू में से कोई एक हो सकती है: ADMIN_READ, ADMIN_WRITE, DATA_READ या DATA_WRITE. जब किसी तरीके को कॉल किया जाता है, तो Cloud Firestore एक ऑडिट लॉग जनरेट करता है. इसकी कैटगरी, उस तरीके को लागू करने के लिए ज़रूरी अनुमति की type प्रॉपर्टी पर निर्भर करती है.
ऐसे तरीके जिनके लिए type प्रॉपर्टी की वैल्यू DATA_READ, DATA_WRITE या ADMIN_READ के साथ IAM की अनुमति की ज़रूरत होती है वे डेटा ऐक्सेस ऑडिट लॉग जनरेट करते हैं.
ऐसे तरीके जिनके लिए type प्रॉपर्टी की वैल्यू ADMIN_WRITE वाली आईएएम अनुमति की ज़रूरत होती है वे एडमिन गतिविधि के ऑडिट लॉग जनरेट करते हैं.
| अनुमति का टाइप | तरीके |
|---|---|
ADMIN_READ |
google.cloud.location.Locations.GetLocationgoogle.cloud.location.Locations.ListLocationsgoogle.firestore.admin.v1.FirestoreAdmin.GetBackupgoogle.firestore.admin.v1.FirestoreAdmin.GetBackupSchedulegoogle.firestore.admin.v1.FirestoreAdmin.GetDatabasegoogle.firestore.admin.v1.FirestoreAdmin.GetFieldgoogle.firestore.admin.v1.FirestoreAdmin.GetIndexgoogle.firestore.admin.v1.FirestoreAdmin.ListBackupSchedulesgoogle.firestore.admin.v1.FirestoreAdmin.ListBackupsgoogle.firestore.admin.v1.FirestoreAdmin.ListDatabasesgoogle.firestore.admin.v1.FirestoreAdmin.ListFieldsgoogle.firestore.admin.v1.FirestoreAdmin.ListIndexesgoogle.firestore.admin.v1beta1.FirestoreAdmin.GetIndexgoogle.firestore.admin.v1.MongoDBCompatible.ListIndexesgoogle.firestore.admin.v1.MongoDBCompatible.ListDatabases
|
ADMIN_WRITE |
google.firestore.admin.v1.FirestoreAdmin.CreateBackupSchedulegoogle.firestore.admin.v1.FirestoreAdmin.CreateDatabasegoogle.firestore.admin.v1.FirestoreAdmin.CreateIndexgoogle.firestore.admin.v1.FirestoreAdmin.DeleteBackupgoogle.firestore.admin.v1.FirestoreAdmin.DeleteBackupSchedulegoogle.firestore.admin.v1.FirestoreAdmin.DeleteDatabasegoogle.firestore.admin.v1.FirestoreAdmin.DeleteIndexgoogle.firestore.admin.v1.FirestoreAdmin.RestoreDatabasegoogle.firestore.admin.v1.FirestoreAdmin.UpdateBackupSchedulegoogle.firestore.admin.v1.FirestoreAdmin.UpdateDatabasegoogle.firestore.admin.v1.FirestoreAdmin.UpdateFieldgoogle.longrunning.Operations.CancelOperationgoogle.longrunning.Operations.DeleteOperation
|
DATA_READ |
google.firestore.v1.MongoDBCompatible.Findgoogle.firestore.v1.MongoDBCompatible.Aggregategoogle.firestore.v1.MongoDBCompatible.GetMoregoogle.firestore.v1.MongoDBCompatible.ListCollectionsgoogle.firestore.v1.MongoDBCompatible.Countgoogle.firestore.v1.MongoDBCompatible.Distinctgoogle.firestore.v1.MongoDBCompatible.CommitTransactiongoogle.firestore.v1.MongoDBCompatible.AbortTransactiongoogle.firestore.v1.MongoDBCompatible.EndSessionsgoogle.firestore.v1.MongoDBCompatible.KillCursors
|
DATA_WRITE |
google.firestore.v1.MongoDBCompatible.Insertgoogle.firestore.v1.MongoDBCompatible.Updategoogle.firestore.v1.MongoDBCompatible.Deletegoogle.firestore.v1.MongoDBCompatible.FindAndModifygoogle.firestore.v1.MongoDBCompatible.CreateCollection
|
अनुरोध करने वाले कॉलर की पहचान करना
ऑडिट लॉग की एंट्री में, लॉग की गई कार्रवाई करने वाले की पहचान की जानकारी शामिल होती है. अनुरोध करने वाले कॉलर की पहचान करने के लिए, AuditLog ऑब्जेक्ट में ये फ़ील्ड देखें:
कॉलर की पहचान,
AuthenticationInfoफ़ील्ड में मौजूद होती है. इसमें उपयोगकर्ता काprincipalEmailशामिल हो सकता है. इस जानकारी को कभी-कभी छिपा दिया जाता है.AuditLogएंट्री केrequestMetadataऑब्जेक्ट में मौजूदcallerIpफ़ील्ड में, कॉल करने वाले व्यक्ति का आईपी पता शामिल होता है.