Créer une nomenclature logicielle

En février 2022, le NIST (National Institute of Standards and Technology) a publié la version 1.1 du framework de développement logiciel sécurisé (SSDF), un ensemble de consignes complètes sur les pratiques de développement logiciel sécurisé, en réponse au Décret exécutif sur la cybersécurité 14028 de 2021.

Dans le cadre de ces exigences, le gouvernement des États-Unis peut demander une nomenclature logicielle (SBOM), qui répertorie les composants d'une version de logiciel.

Les SBOM sont automatiquement générés pour les builds Android d'intégration continue (CI Android). Si vous utilisez l'un des builds CI, procédez comme suit pour obtenir un SBOM pour une compilation. 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 Enter a branch name (Saisir un nom de branche), saisissez aosp-main.

  3. Pour les compilations dont l'état est vert, cliquez sur la flèche vers le bas Afficher les artefacts. L'écran "Artefacts de compilation" s'affiche.

  4. Sur l'écran "Artefacts de compilation", utilisez une commande de recherche pour localiser le fichier JSON SBOM (CTRL+F ou CMD+F).

Générer un SBOM personnalisé

Pour tout ajout à la plate-forme, y compris les binaires ou les chaînes d'outils de compilation et de publication, vous devez fournir une représentation SBOM de votre produit conforme 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
    

    TARGET fait référence à la même cible de compilation que vous utilisez pour compiler Android, par exemple aosp_arm64-userdebug.

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

    $ ls out/dist/sbom*