इस दस्तावेज़ में, 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 प्रॉपर्टी होती है. इसकी वैल्यू एक इनम होती है. यह चार वैल्यू में से कोई एक हो सकती है: ADMIN_READ, ADMIN_WRITE, DATA_READ या DATA_WRITE. किसी तरीके को कॉल करने पर, Cloud Firestore एक ऑडिट लॉग जनरेट करता है. इसकी कैटगरी, उस तरीके को पूरा करने के लिए ज़रूरी अनुमति की type प्रॉपर्टी पर निर्भर करती है.
जिन तरीकों के लिए, IAM की ऐसी अनुमति की ज़रूरत होती है जिसमें type प्रॉपर्टी की वैल्यू DATA_READ, DATA_WRITE या ADMIN_READ होती है वे डेटा ऐक्सेस ऑडिट लॉग जनरेट करते हैं.
ऐसे तरीके जिनके लिए आईएएम की अनुमति ज़रूरी होती है. साथ ही, type प्रॉपर्टी की वैल्यू ADMIN_WRITE generate होती है. इससे एडमिन की गतिविधि के ऑडिट लॉग जनरेट होते हैं.
| अनुमति का टाइप | तरीके |
|---|---|
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फ़ील्ड में, कॉल करने वाले का आईपी पता शामिल होता है.