إنشاء فاتورة مواد للبرامج (SBOM)

في شباط (فبراير) 2022، نشر المعهد الوطني للمعايير والتكنولوجيا (NIST) الإصدار 1.1 من إطار عمل تطوير البرامج الآمنة (SSDF)، وهو مجموعة من الإرشادات الشاملة حول ممارسات تطوير البرامج الآمنة استجابةً للأمر التنفيذي (EO) 14028 للأمن السيبراني لعام 2021.

وكجزء من هذه المتطلبات، قد تطلب الحكومة الأمريكية قائمة بمكونات البرامج (SBOM)، وهي قائمة تتضمّن مكونات إصدار البرنامج.

يتم إنشاء قوائم مستندات وصف المواد البرمجية تلقائيًا لإصدارات "الدمج المستمر" (CI) في Android. إذا كنت تستخدم إحدى إصدارات CI، اتّبِع الخطوات التالية للحصول على قائمة بمكونات البرامج (SBOM) لإصدار معيّن. في ما عدا ذلك، اتّبِع الخطوات لإنشاء قائمة مواد برمجية مخصّصة.

الحصول على قائمة مواد برمجية (SBOM) تم إنشاؤها مسبقًا

للحصول على قائمة مواد البرامج (SBOM) تم إنشاؤها مسبقًا، اتّبِع الخطوات التالية:

  1. في المتصفّح، انتقِل إلى ci.android.com.

  2. في الحقل إدخال اسم فرع، اكتب aosp-android-latest-release.

  3. بالنسبة إلى أي من الإصدارات التي تحمل الحالة الخضراء، انقر على السهم المتّجه للأسفل عرض العناصر. تظهر شاشة "إنشاء عناصر البناء".

  4. في شاشة "إنشاء عناصر"، استخدِم أمر بحث لتحديد موقع مجلد JSON الخاص بقائمة المواد (CTRL+F أو CMD+F).

إنشاء قائمة مواد برمجية مخصّصة

بالنسبة إلى أي إضافات إلى المنصة، بما في ذلك أي سلاسل أدوات ثنائية أو سلاسل أدوات إنشاء وإصدار، يجب تقديم تمثيل لقائمة المواد البرمجية (SBOM) الخاصة بمنتجك يستوفي الحد الأدنى من العناصر المطلوبة في قائمة المواد البرمجية (SBOM). لإنشاء قائمة مواد برمجية (SBOM) مخصّصة، اتّبِع الخطوات التالية:

  1. نفِّذ الأوامر التالية لإعداد بيئتك وإنشاء قائمة المواد البرمجية (SBOM):

    $ source build/envsetup.sh
    $ lunch TARGET
    $ m sbom # Generates an SBOM

    يشير TARGET إلى هدف الإنشاء نفسه الذي تستخدمه لإنشاء تطبيق Android، مثل aosp_arm64-userdebug.

  2. لضمان إنشاء قائمة المواد البرمجية بشكل صحيح، نفِّذ ما يلي:

    $ ls out/dist/sbom*