ایجاد یک صورتحساب نرم افزاری مواد (SBOM)

در فوریه 2022، مؤسسه ملی استانداردها و فناوری (NIST) نسخه 1.1 چارچوب توسعه نرم‌افزار امن (SSDF) را منتشر کرد، مجموعه‌ای از دستورالعمل‌های جامع در مورد شیوه‌های توسعه نرم‌افزار ایمن در پاسخ به فرمان اجرایی امنیت سایبری (EO) 14028 2021 .

به عنوان بخشی از این الزامات، دولت ایالات متحده ممکن است یک صورتحساب نرم افزاری مواد (SBOM) را درخواست کند که اجزای یک نسخه نرم افزار را فهرست می کند.

SBOM ها به طور خودکار برای ساخت های Android Continuous Integration (Android CI) تولید می شوند. اگر از یکی از ساخت‌های CI استفاده می‌کنید، از مراحل زیر برای به دست آوردن SBOM برای یک ساخت استفاده کنید. در غیر این صورت، مراحل ایجاد یک SBOM سفارشی را دنبال کنید.

یک SBOM از پیش تولید شده بدست آورید

برای به دست آوردن یک SBOM از پیش تولید شده:

  1. در مرورگر خود به ci.android.com بروید.

  2. در قسمت Enter a branch name ، aosp-main را تایپ کنید.

  3. برای هر یک از ساخت‌ها با وضعیت سبز، روی پیکان رو به پایین View artifacts کلیک کنید. صفحه Build Artifacts ظاهر می شود.

  4. در صفحه ساخت مصنوعات، از دستور find برای یافتن فایل SBOM JSON ( CTRL+F یا CMD+F ) استفاده کنید.

یک SBOM سفارشی ایجاد کنید

برای هر گونه افزوده شدن به پلتفرم، از جمله هر زنجیره ابزار باینری یا ساخت و انتشار، باید یک نمایش SBOM از محصول خود ارائه دهید که حداقل عناصر را برای یک صورت حساب مواد نرم افزاری (SBOM) برآورده کند. برای ایجاد یک SBOM سفارشی:

  1. دستورات زیر را برای تنظیم محیط خود و ساخت SBOM اجرا کنید:

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

    TARGET به همان هدف ساختی که برای ساخت اندروید استفاده می‌کنید، مانند aosp_arm64-userdebug اشاره دارد.

  2. برای اطمینان از اینکه SBOM به درستی ساخته شده است، اجرا کنید:

    $ ls out/dist/sbom*