این مقاله به بررسی ابزارهای مختلفی میپردازد که میتوان از آنها برای ایجاد فهرست مواد نرمافزاری (SBOM) برای یک برنامه یا بستهی NuGet استفاده کرد. نویسنده، اندرو لاک، روش استفاده از دکمه "Export SBOM" در GitHub، ابزار خط فرمان Microsoft به نام sbom-tool، اکشن GitHub به نام anchore/sbom-action و ماژول CycloneDX برای .NET را نشان میدهد.
فهرست مواد نرمافزاری (SBOM) در واقع لیستی از تمام بستهها و وابستگیهایی است که در ساخت یک مصنوع نرمافزاری مانند یک برنامه یا یک بسته استفاده میشوند. SBOMها برای توسعهدهندگان و همچنین افرادی که از نرمافزار استفاده میکنند یا آن را اداره میکنند مفید هستند. این فهرست دیدگاهی در مورد اجزای موجود در نرمافزار فراهم میکند، از جمله هرگونه اجزایی که دارای آسیبپذیریهای شناخته شده هستند و همچنین مسائل مربوط به انطباق یا مجوز یا خطرات زنجیره تامین.
دو فرمت محبوب SBOM، System Package Data Exchange (SPDX) و CycloneDX هستند. هر دو فرمت دارای گزینه سند JSON هستند و به عنوان استانداردهای ISO/IEC 5692:2021 برای SPDX و ECMA-424 برای CycloneDX مشخص شدهاند. میتوان آنها را با استفاده از طیف گستردهای از ابزارهای منبع باز تولید کرد. اندرو لاک در این مقاله به بررسی روشهای ساده برای تولید SBOM برای بستههای NuGet منبع باز خود میپردازد.
نویسنده همچنین اشاره میکند که میتوانید یک SBOM را مستقیماً از یک مخزن GitHub با رفتن به بخش Insights > Dependency Graph و کلیک کردن بر روی Export SBOM دانلود کنید. این کار یک سند JSON SPDX را دانلود میکند که شامل اطلاعاتی مانند نسخه SPDX، اطلاعات سازنده و لیست بستهها با جزئیاتی مانند نام، شناسه SPDX و اطلاعات نسخه است.
در نهایت، این مقاله به توسعهدهندگان .NET کمک میکند تا با استفاده از ابزارهای مختلف، SBOM خود را برای پروژههای منبع باز ایجاد و مدیریت کنند و در نتیجه امنیت و شفافیت زنجیره تامین نرمافزار خود را بهبود بخشند.
مشاهده مطلب اصلی