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

در فوریه ۲۰۲۲، مؤسسه ملی استاندارد و فناوری (NIST) نسخه ۱.۱ از چارچوب توسعه نرم‌افزار امن (SSDF) را منتشر کرد، مجموعه‌ای از دستورالعمل‌های جامع در مورد شیوه‌های توسعه نرم‌افزار امن در پاسخ به دستورالعمل اجرایی امنیت سایبری (EO) ۱۴۰۲۸ سال ۲۰۲۱ .

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

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

یک SBOM از پیش تولید شده دریافت کنید

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

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

  2. در فیلد «نام شاخه را وارد کنید» ، aosp-android-latest-release تایپ کنید.

  3. برای هر یک از ساخت‌هایی که وضعیت سبز دارند، روی فلش رو به پایین « مشاهده آثار باستانی» کلیک کنید. صفحه «ساخت آثار باستانی» ظاهر می‌شود.

  4. در صفحه Build artifacts، از دستور 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*