Sporządzanie listy materiałów do oprogramowania (SBOM)

W lutym 2022 r. Narodowy Instytut Standardów i Technologii (National Institute of Standards and Technology, NIST) opublikował wersję 1.1 Secure Software Development Framework (SSDF), czyli zbioru kompleksowych wytycznych dotyczących bezpiecznego tworzenia oprogramowania w odpowiedzi na rozporządzenie cyberbezpieczeństwa z 2021 r. (EO) 14028.

W ramach tych wymagań rząd Stanów Zjednoczonych może poprosić o zestaw materiałów do oprogramowania (SBOM), który zawiera listę składników wersji oprogramowania.

SBOM są generowane automatycznie w przypadku kompilacji w ramach ciągłej integracji Androida (Android CI). Jeśli używasz jednej z kompilacji CI, wykonaj poniższe czynności, aby uzyskać SBOM dla kompilacji. W przeciwnym razie wykonaj te czynności, aby wygenerować niestandardowy SBOM.

Uzyskiwanie wstępnie wygenerowanego SBOM

Aby uzyskać wstępnie wygenerowany SBOM:

  1. W przeglądarce otwórz stronę ci.android.com.

  2. W polu Wpisz nazwę gałęzi wpisz aosp-main.

  3. Przy dowolnej kompilacji oznaczonej na zielono kliknij strzałkę w dół Wyświetl artefakty. Pojawi się ekran z artefaktami kompilacji.

  4. Na ekranie Artefakty kompilacji użyj polecenia „Znajdź”, aby znaleźć plik JSON SBOM (CTRL+F lub CMD+F).

Generowanie niestandardowego SBOM

W przypadku wszelkich uzupełnień do platformy, w tym wszelkich plików binarnych oraz łańcuchów narzędzi do kompilacji i publikacji, musisz przedstawić reprezentację produktu w sposób zgodny z minimalnymi elementami dotyczącymi listy materiałów (SBOM). Aby wygenerować niestandardowy SBOM:

  1. Uruchom te polecenia, aby skonfigurować środowisko i skompilować SBOM:

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

    Pole TARGET odnosi się do tego samego celu kompilacji, którego używasz do tworzenia Androida, na przykład aosp_arm64-userdebug.

  2. Aby sprawdzić, czy SBOM skompilowano prawidłowo, wykonaj:

    $ ls out/dist/sbom*