Skip to content

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

يوفر Doggy قدرة تدقيق كاملة لعمليات النظام عبر السلسلة الكاملة، حيث يسجل AuditService جميع العمليات الرئيسية وتُخزَّن في App\Entity\System\AuditLog.

نظرة عامة ​

يتكون نظام سجلات التدقيق من الأجزاء التالية:

  • كيان AuditLog (src/Entity/System/AuditLog.php): تخزين السجلات بشكل دائم
  • AuditService (src/Service/System/AuditService.php): خدمة تسجيل السجلات
  • نقطة دخول سجلات التدقيق في App\Controller\Admin\SecurityConfigController

المحتوى المُسجَّل ​

تحتوي كل سجل تدقيق على:

  • action: نوع العملية (login_success، login_failure، create، update، delete)
  • category: الفئة (security، business، system)
  • details: تفاصيل العملية (بصيغة JSON)
  • performer: المستخدم الذي نفّذ العملية

طريقة الاستخدام ​

php
use App\Service\System\AuditService;

class SomeService
{
    public function __construct(private AuditService $auditService) {}

    public function doSomething(): void
    {
        // 登录成功
        $this->auditService->log('login_success', 'security', [], $user);

        // 登录失败
        $this->auditService->log('login_failure', 'security', [
            'username' => $email,
            'error' => $exception->getMessage(),
        ]);

        // 数据操作
        $this->auditService->log('update', 'business', [
            'entity' => Employee::class,
            'id' => $employee->getId(),
            'changes' => $changes,
        ]);
    }
}

التكامل ​

تم دمج سجلات التدقيق تلقائيًا في العمليات الأمنية الرئيسية:

مصادقة تسجيل الدخول ​

يسجل App\Security\AppCustomAuthenticator تلقائيًا:

php
// 登录成功时
$this->auditService->log('login_success', 'security', [], $user);

// 登录失败时
$this->auditService->log('login_failure', 'security', [
    'username' => $email,
    'error' => $exception->getMessage(),
]);

المتطلبات الأمنية ​

  • لا يمكن الاطلاع على سجلات التدقيق إلا من قبل المدققين (ROLE_AUDITOR، عبر صلاحية AUDIT_VIEW الخاصة بـ ThreeOfficersVoter)
  • تُخزَّن السجلات في قاعدة البيانات مع دعم التتبع والتصدير
  • دعم البحث حسب النطاق الزمني والمستخدم ونوع العملية

مصدر مفتوح برخصة MIT | حقوق النشر © 2026 Doggy