يستطيع فريق الأمن لديك جمع سجل تدقيق جديرون في نظام SIEM (مثل Splunk أو Microsoft Sentinel أو QRadar أو Elastic): كل تغيير في التطبيق أو عبر الواجهة البرمجية، وعمليات تسجيل الدخول، وتصدير البيانات، ونشاط مشرفي المنصة، مع الفاعل والإجراء والسجل والقيمة قبل التغيير وبعده وعنوان IP ووكيل المستخدم. هناك طريقتان للحصول عليه، ويمكنك استخدامهما معًا.
| السحب: سجل التدقيق | الدفع: خطاف الويب audit.recorded | |
|---|---|---|
| الطريقة | استعلم دوريًا من GET /api/v1/audit-events | يرسل جديرون كل صف بطلب POST إلى نقطة الاستقبال لديك |
| التأخير | فترة الاستعلام لديك | ثوانٍ |
| الاستدراك بعد انقطاع | في أي وقت (تُحفظ الصفوف ما دام سجل التدقيق) | إعادة المحاولة بفواصل متزايدة عدة أيام (انظر إعادة المحاولة)، وتُحفظ الأحداث 30 يومًا |
| الصلاحية | audit.view | audit.view، واختيار audit.recorded في نقطة الاستقبال |
كلاهما يحمل الكائن نفسه، وهو موصوف في صفحة المرجع أحداث التدقيق.
السحب: الاستعلام من السجل
- أنشئ تكاملًا لنظام SIEM بصلاحية
audit.viewفقط (وأضفrecruitment.candidate.contactفقط إن كان مسموحًا لنظام SIEM حفظ بيانات تواصل المرشحين؛ ومن دونها تظهر[redacted]). - أول تشغيل: تصفّح
GET /api/v1/audit-events?limit=100من البداية، متتبعًاnextCursorحتى يصبحnull. - احفظ قيمة
occurredAtلآخر صف. - كل بضع دقائق: استعلم مجددًا مع
updatedSince= الوقت المحفوظ، وتجاوز المعرّفات التي لديك (الصفوف المسجلة في ذلك الوقت بالضبط تعود).
تأتي الصفوف من الأقدم إلى الأحدث ولا تتغير أبدًا، فالسجل من جهتك يُضاف إليه فقط.
الدفع: الحدث audit.recorded
- من الإعدادات ← التكاملات ← (التكامل) ← خطافات الويب، أضف نقطة استقبال (مُجمِّع HTTP لنظام SIEM، خلف مستقبِل صغير يتحقق من التوقيع) واختر
audit.recorded. وهو مُدرج منفصلًا ولا يشمله*. - يُرسَل كل صف تدقيق حدثًا واحدًا، و
data.object= صف التدقيق. - تحقق من التوقيع وأزل التكرار حسب معرّف الحدث كما في خطافات الويب.
استخدم السحب للاستدراك كلما تعطلت نقطة الاستقبال أطول من فترة إعادة المحاولة.
ما يحتويه السجل وما لا يحتويه
- يحتوي: كل تغيير (من التطبيق والواجهة البرمجية والأتمتة)، وعمليات تسجيل الدخول (
auth.signed_in)، وتغيير كلمات المرور، وتصدير البيانات (audit.log.exportedوpeople.participation.exported…)، وتغييرات مفاتيح التكاملات ونقاط استقبالها (settings.integration.*)، وإجراءات مشرفي منصة جديرون داخل مساحة عملك. - لا يحتوي عمليات القراءة عبر الواجهة البرمجية. القراءة عبرها لا تُسجَّل، فيُظهر السجل ما غيّرته تكاملاتك لا ما قرأته.
- تُفرَّغ الأسرار (كلمات المرور والرموز) عند كتابة الصف. وتُخفى بيانات تواصل المرشح عند القراءة ما لم يكن المفتاح يملك
recruitment.candidate.contact، وتُستبعد تغييرات الأجر (الوظائف والأوصاف الوظيفية وسلالم الرواتب) ومعرّفات الأجر ومبالغه المحفوظة في المستوى الأعلى منmetadata(مثلاً عند إنشاء وظيفة أو شاغر) وmetadata.gradeCodeما لم يكن يملكstructure.functional.salary.
الربط بحقول SIEM
| حقل SIEM | صف التدقيق |
|---|---|
| وقت الحدث | occurredAt |
| معرّف الحدث | id (السحب) أو id الحدث (الدفع) |
| الإجراء / نوع الحدث | action |
| المستخدم / الجهة الفاعلة | actor.type وactor.id وactor.name (ويحمل فاعل integration أيضًا metadata.actorIntegration.keyPrefix) |
| الكائن | target.type وtarget.id وtarget.label |
| عنوان IP المصدر، ووكيل المستخدم | ipAddress وuserAgent |
| التفاصيل | metadata (مثل changes بصيغة { from, to }) |
الجمع على مستوى الجهة
في النشر المخصص، يستطيع نظام SIEM لدى الجهة أو الشركة القابضة قراءة صفوف تدقيق كل مساحات العمل عبر تكامل قراءة واحد على مستوى النشر. ويشمل سجله أيضًا صفوف المنصة (workspaceId: null): إجراءات لوحة تحكم المنصة مثل إنشاء مساحات العمل، ودخول مشرفي المنصة وخروجهم، وتغييرات أدوار اللوحة وتكاملاتها، ومحاولات تسجيل الدخول الفاشلة إلى اللوحة (admin.login_failed). صفِّ حسب action إن كنت تحتاج بعضها فقط.