أنواع التحقق
مرجع قانوني للتحققات المنفّذة داخل جهاز اختبار موفر. ما لم يُذكر خلاف ذلك، الهدف
هو primary. يتطلب كل تحقق أيضا description قابلا للقراءة.
تحققات الضيف المستقرة
| النوع | params المطلوبة | سلوك اختياري |
|---|---|---|
user_exists | username | يشغّل id |
user_password | username | يتحقق من وجود تجزئة كلمة مرور غير مقفلة؛ لا يحاول دخولا تفاعليا |
user_in_group | username, group | يقبل مكافئات Vyatta الإدارية عند فحص sudo/admin |
file_exists | path | يقبل ملفا أو دليلا |
file_contains | path, pattern أو content | يستخدم grep؛ القيمة نمط grep وليست مقارنة حرفية فقط |
file_permissions | path, mode | يقارن الوضع الثماني الذي يبلغه stat |
service_running | service | يفحص حالة systemd النشطة؛ يعرف مجموعة أسماء مستعارة صغيرة عبر التوزيعات |
service_enabled | service | يفحص تمكين systemd |
package_installed | package | يفحص قاعدة مدير الحزم المدعوم على الضيف |
port_listening | port | قد يكون protocol هو tcp أو udp؛ الافتراضي TCP |
command_succeeds | command | يجب أن يكون رمز الخروج صفرا؛ timeout_seconds/timeout محدود بـ 1–1,800 ثانية |
command_output | command بالإضافة إلى تعبير منتظم في expected_pattern أو pattern أو expected أو expected على مستوى التحقق | يطابق stdout بدلالات التعبير المنتظم في Python |
network_reachable | host | count الافتراضي 3؛ يستخدم ICMP ping |
http_responds | url | status الافتراضي 200 |
مثال:
{
"type": "command_output",
"description": "Application reports the expected release",
"params": {
"command": "/opt/acme/bin/acme --version",
"expected_pattern": "^acme 2\\.4\\.[0-9]+$"
}
}يمكن أن يصبح الأمر والمخرج الملتقط أدلة اختبار. لا تضمّن أسرارا.
تحققات الواجهة
تعتمد فحوصات الواجهة على جلسة عرض عاملة ومساعدات لقطة أو إدخال المشغّل. هي أكثر حساسية للبيئة من فحوصات أوامر الضيف.
| النوع | المعاملات الرئيسية | ما يفحصه |
|---|---|---|
gui_application_opens | application (قانوني)؛ يقبل المعالج أيضا خيارات إطلاق خاصة | يبدأ تطبيقا ويبحث عن نافذة |
gui_window_visible | عنوان نافذة أو معاملات مطابقة يستخدمها المعالج | يبحث عن نافذة موجودة |
gui_execute_command | command | ينفّذ أمر سطح مكتب؛ يمكنه التقاط لقطة |
gui_application_process | process_name | يبحث عن العملية كاحتياط بلا واجهة |
gui_screenshot_matches | reference_id؛ اختياري threshold ومناطق قص/قناع | يقارن اللقطة الحالية بمرجع مخزّن |
gui_wallpaper_matches | wallpaper_path؛ عتبات ومناطق اختيارية | يفحص مسار الخلفية المضبوط والنتيجة البصرية |
desktop_wallpaper_matches | wallpaper_path | يشغّل فحص أصل/إعداد/بصري أضيق لخلفية سطح المكتب |
gui_click_element | x, y | يرسل إدخالا بالمؤشر حسب الإحداثيات |
gui_form_fill | fields | يملأ مدخلات نموذج موصوفة بالإحداثيات |
gui_text_visible | text أو contains أو ocr_contains | يستخدم OCR على الشاشة أو منطقة مختارة |
يقبل المنفّذ أيضا أسماء مستعارة للتوافق لبعض أنواع OCR والخلفية. فضّل الأسماء القانونية أعلاه في الوصفات الجديدة. اختبارات الإحداثيات حساسة للدقة؛ استخدم OCR أو فحوصات النتيجة حيث أمكن.
فحوصات المعيار تنسيق منفصل
يظهر cis_benchmark في مفردات التحقق التاريخية للوصفة، لكن موزّع التحقق العادي
ليس لديه معالج cis_benchmark. تُقدَّم فحوصات CIS والمعايير الأخرى كسجلات معيار
مع audit_script وتنفَّذ عبر مشغّل المعيار. استخدم
سير عمل معيار CIS، لا تحققا مخصصا بـ
type: "cis_benchmark".
تفسير النتيجة
- البيانات المطلوبة الناقصة تعطي
error، أو قد يسقط المخطط التحقق بتحذير قبل التنفيذ. - هدف
on_vmغير متاح يعطيskipped. - نتيجة غير مطابقة تعطي
failed. passedوحده دليل إيجابي لذلك التحقق.
انظر التحققات المخصصة لإرشاد التأليف.