
📦 :octocat: GitHub Action تقوم بفحص أمني لـ GitHub Actions الخاصة بك.
إجراء GitHub يقوم بفحص أمني لإجراءات GitHub الخاصة بك.
يعتمد هذا الإجراء على octoscan
فيما يلي مثال أساسي لاستخدام هذا الإجراء. سيعمل هذا مع أحداث push و pull_request على حد سواء.
---
name: Octoscan
on:
workflow_dispatch:
pull_request:
paths:
- '.github/workflows/*'
push:
paths:
- '.github/workflows/*'
permissions:
security-events: write
actions: read
contents: read
jobs:
octoscan:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- id: octoscan
name: Run octoscan
uses: synacktiv/action-octoscan@v1
- name: Upload SARIF file to GitHub
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: "${{steps.octoscan.outputs.sarif_output}}"
category: octoscan
يمكن مراجعة النتائج الأمنية في تبويب أمان الكود إذا كان لديك صلاحيات الكتابة على المستودع المستهدف:

أو مباشرة في طلب السحب:

تعتمد المدخلات على خيارات octoscan، يمكنك العثور عليها هنا.
ما يلي اختياري كمفاتيح step.with:
💡 ليس من الممكن استخدام enable_rules و disable_rules في نفس الوقت.
يمكن الوصول إلى المخرجات التالية عبر ${{ steps.<step-id>.outputs }} من هذا الإجراء
| الاسم | النوع | الوصف |
|---|---|---|
sarif_output | String | اسم الملف الذي يحتوي على مخرجات SARIF. |
يتطلب هذا الإجراء الصلاحيات التالية على رمز تكامل GitHub:
permissions:
security-events: write
actions: read
contents: read
يُستخدم security-events لدفع مخرجات octoscan إلى فحص الكود في GitHub.
| الاسم | النوع | الوصف |
|---|
workdir | String | دليل العمل بالنسبة إلى الدليل الجذر. |
filter_triggers | String | فحص سير العمل باستخدام مشغلات محددة (قائمة مفصولة بفواصل: "push,pull_request_target" أو مهيأة مسبقًا: external/allnopr). القيمة الافتراضية هي external. |
filter_run | Boolean | البحث عن حقن التعبيرات فقط في سكربتات الصدفة run. القيمة الافتراضية هي true |
ignore | String | تعبير نمطي يطابق رسائل الخطأ التي تريد تجاهلها. |
disable_rules | String | تعطيل قواعد محددة. تُفصل بفاصلة ",". لا يمكن استخدامها مع enable_rules. |
enable_rules | String | تفعيل قواعد محددة، سيؤدي ذلك إلى تعطيل جميع القواعد الأخرى. تُفصل بفاصلة ",". لا يمكن استخدامها مع disable_rules. |