Carregando Lista de materiais de software Arquivos que usam uma REST API
Revise as seguintes informações antes de carregar Lista de materiais de software Arquivos que usam uma API.
Usando a REST API
Para carregar um arquivo SBOM com uma API, a função sn_sbom_core.sbom_ingest é necessária.
Carregar API.
Esta API é usada para carregar e ingerir um arquivo SBOM (CycloneDX/SPDX) em sua instância.
- XML e JSON no CycloneDx (versões 1.0 - 1.6).
- JSON no SPDX (versões 2,2-2,3)
-
Nota:Arquivos com mais de 32 MB podem não ser carregados corretamente.
Método HTTP: (POST)
- Criado
- Fase de Vida
- Cadeia de caracteres buildid- que você envia
- LifecycleStage- Dois valores, production ou pre_production
- FetchVulenrabilityInfo- t/f
- FetchPackageInfo-t/f
| Parâmetros da solicitação | Valores possíveis | Descrição |
|---|---|---|
| productModelId | SYS ID | SYS ID do modelo de produto a ser mapeado com a aplicação raiz de fornecida SBOM. |
| BusinessApplicationId | SYS ID | SYS ID da aplicação de negócios a ser mapeada com a aplicação raiz de fornecida SBOM. |
| BusinessApplicationName (descontinuado) | Seu nome da aplicação de negócios | Nome da aplicação de negócios a ser mapeada com a aplicação raiz de fornecida SBOM. |
| SbomSource | Um produto como Veracode, por exemplo | A origem do seu SBOM arquivo. |
| requestedBy | Uma ferramenta, ou nome de uma metodologia, Jenkins. Se você usar "devops", buildid e lifecycleStage serão obrigatórios. | Carregamento solicitado por |
| Criado | Um solicitante de cadeia de caracteres envia. | ID de compilação do SBOM compilação. |
| Fase de Vida | produção ou pre_production | Fase do ciclo de vida da entidade. |
| FetchVulenrabilityInfo | t/f | Se verdadeiro, aciona a integração de inteligência de vulnerabilidades. |
| FetchInformações do pacote | t/f | Se verdadeiro, aciona a integração de inteligência de pacote. |
{
"result": {
"status": "success",
"message": "Queued for processing.",
"bomRecordId": "f207059b4393c290629aa597cbb8f247"
}
}API de status
- URL DA API: /api/sbom/core/upload/status
- Método HTTP (GET)
| Parâmetros da solicitação | Valores possíveis | Descrição |
|---|---|---|
| BomRecordId | SYS ID | ID do registro do SBOM que é retornado por meio da API de carregamento para um carregamento bem-sucedido do SBOM. |
Exemplo de resposta padrão da API de status.
{
"result": {
"bomRecordId": "0407c0fea3e70a505df340f5251e617e",
"uploadStatus": "processed",
"additionalInfoStatus": "not_requested",
"uploadSummary": {
"components": {
"added": 0,
"removed": 0,
"total": 70
}
}
}
}
Exemplo de resposta da API de status com parâmetros adicionais. Se você solicitou fetchVulenrabilityInfo para esse SBOM, obterá o detalhamento da vulnerabilidade como parte da resposta.
{
"result": {
"bomRecordId": "93af349b4393c290629aa597cbb8f258",
"uploadStatus": "processed",
"additionalInfoStatus": "complete",
"uploadSummary": {
"components": {
"added": 0,
"removed": 0,
"total": 3
},
"vulnerabilityInfo": {
"critical": 0,
"high": 0,
"medium": 0,
"low": 0,
"none": 0
}
},
"buildId": "1"
}
}
Se você solicitou fetchPackageInfo para esse SBOM, obterá contagens obsoletas e abandonadas como parte da resposta.
Depois de um SBOMé processado com sucesso, onde você exibe os registros carregados depende das aplicações que está usando.
- Se você estiver usando SBOM Resposta, o registro da entidade da BOM é exibido no SBOM Lista Status de ingestão no módulo Fila da BOM no SBOM Espaço.
- Se você estiver usando o SBOM Core, navegue até .
Melhorias no compatíveis SBOM padrões e informações gerais de uso
- XML e JSON no CycloneDx (versões 1.0 - 1.6).
- JSON no SPDX (versões 2,2-2,3)
-
Nota:Arquivos com mais de 32 MB podem não ser carregados corretamente.
- Importe informações adicionais nos arquivos SBOM do CycloneDX com a propriedade (sn_sbom_core.collect_properties). Esta propriedade está desativada por padrão. Ative a propriedade para importar informações que geralmente não são compatíveis. Todas as informações importadas dessas propriedades são carregadas na tabela Propriedade do componente SBOM [sn_sbom_comp_property] para o seguinte:
- Arquivos SBOM carregados
- Metadados
- Vulnerabilidades individuais
- Componentes
- Exiba dados de componentes importados para licenças declaradas e concluídas para arquivos SBOM nas versões 1,4 e posteriores do CycloneDX em dois novos campos de licença:
- Declarado
- Concluído
- O suporte à análise do SBOM foi estendido para os seguintes tipos de componente do CycloneDX:
- Versão 1,5: Plataforma, dados, driver de dispositivo, modelo de aprendizado de máquina
- Versão 1,6: Criptográfico
- XML e JSON no CycloneDx (até e incluindo a versão 1,4).
- JSON em SPDX (até e incluindo v2.3).
Se o usuário chamador for autenticado com sucesso e tiver a função sn_sbom_core.sbom_ingest em seu ServiceNow, você pode acessar a API de fora da sua instância para carregar o. SBOM dados.
Depois que os dados são carregados, eles são analisados. Antes que os dados sejam analisados, os seguintes requisitos são verificados:
- Os dados de entrada são verificados se são JSON ou XML válidos.
- O formato da BOM é compatível. A partir da v2.1 de SBOM Os formatos Core, CycloneDX (JSON e XML) e SPDX (XML) são compatíveis.
- Os campos mínimos estão disponíveis para que os dados possam ser analisados.
Depois que essas verificações são verificadas, uma entrada é feita na tabela Lista de materiais [sn_sbom_doc] com a entrada SBOM dados como um anexo.
Todos os componentes listados em um SBOM definido tipo .
- Componentes para os quais SBOM Os arquivos carregados são considerados entidades de BOM.
- Componentes listados como tipo: biblioteca são considerados componentes de terceiros.