Créer une nomenclature logicielle (SBOM)

En février 2022, le National Institute of Standards and Technology (NIST) a publié la version 1.1 du Secure Software Development Framework (SSDF) , un ensemble de lignes directrices complètes sur les pratiques de développement de logiciels sécurisés en réponse au Cybersecurity Executive Order (EO) 2021 (EO) 14028 .

Dans le cadre de ces exigences, le gouvernement américain peut demander une nomenclature logicielle (SBOM) , qui répertorie les composants d'une version logicielle.

Les SBOM sont automatiquement générés pour les versions d'intégration continue Android (Android CI). Si vous utilisez l'une des builds CI, suivez les étapes suivantes pour obtenir un SBOM pour une build . Sinon, suivez les étapes pour générer un SBOM personnalisé .

Obtenir un SBOM prégénéré

Pour obtenir un SBOM prégénéré :

  1. Dans votre navigateur, accédez à ci.android.com .

  2. Dans le champ Entrez un nom de branche , tapez aosp-main .

  3. Pour l’une des versions ayant le statut vert, cliquez sur la flèche vers le bas Afficher les artefacts . L'écran Créer des artefacts apparaît.

  4. Dans l'écran Créer des artefacts, utilisez une commande find pour localiser le fichier SBOM JSON ( CTRL+F ou CMD+F ).

Générer un SBOM personnalisé

Pour tout ajout à la plate-forme, y compris les chaînes d'outils binaires ou de construction et de publication, vous devez fournir une représentation SBOM de votre produit qui répond aux éléments minimaux d'une nomenclature logicielle (SBOM) . Pour générer un SBOM personnalisé :

  1. Exécutez les commandes suivantes pour configurer votre environnement et créer le SBOM :

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

    Le TARGET fait référence à la même cible de build que vous utilisez pour créer Android, telle que aosp_arm64-userdebug .

  2. Pour vous assurer que le SBOM est correctement construit, exécutez :

    $ ls out/dist/sbom*