

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Collection de dépendances des langages de programmation
<a name="sbom-generator-dependency-collection"></a>

 Le générateur Amazon Inspector SBOM prend en charge différents langages de programmation et frameworks, qui constituent un ensemble robuste et détaillé de dépendances. La génération d'une SBOM vous aide à comprendre la composition de votre logiciel, afin d'identifier les vulnérabilités et de garantir la conformité aux normes de sécurité. Le générateur SBOM d'Amazon Inspector prend en charge les langages de programmation et formats de fichiers suivants. 

## Passez à l'analyse des dépendances
<a name="w2aac37c23b5"></a>


| Langage de programmation | Gestionnaire de packages | Artefacts supportés | Support de la chaîne d'outils | Dépendances de développement | Dépendances transitives | Drapeau privé | Récursivement | 
| --- | --- | --- | --- | --- | --- | --- | --- | 
| Go | Go |  `go.mod` `go.sum` `Go Binaries` `GOMODCACHE`  |  N/A N/A Oui N/A  |  N/A N/A N/A N/A  |  N/A N/A N/A N/A  |  N/A N/A N/A N/A  |  Oui Oui Oui Non  | 

### go.mod/go.sum
<a name="w2aac37c23b5b5"></a>

 Utilisez `go.mod` des `go.sum` fichiers et pour définir et verrouiller les dépendances dans les Go projets. Le générateur Amazon Inspector SBOM gère ces fichiers différemment en fonction de la version de la chaîne Go d'outils. 

**Fonctions principales**
+  Collecte les dépendances depuis `go.mod` (si la version de la Go chaîne d'outils est 1.17 ou supérieure) 
+  Collecte les dépendances depuis `go.sum` (si la version de la Go chaîne d'outils est 1.17 ou inférieure) 
+  Analyses `go.mod` pour identifier toutes les dépendances déclarées et les versions de dépendance 

**Exemple de fichier `go.mod`**  
 Voici un exemple de `go.mod` fichier. 

```
module example.com/project

go 1.17

require (
github.com/gin-gonic/gin v1.7.2
golang.org/x/crypto v0.0.0-20210616213533-5cf6c0f8e123
)
```

**Exemple de fichier `go.sum`**  
 Voici un exemple de `go.sum` fichier. 

```
github.com/gin-gonic/gin v1.7.2 h1:VZ7DdRl0sghbA6lVGSkX+UXO2+J0aH7RbsNugG+FA8Q=
github.com/gin-gonic/gin v1.7.2/go.mod h1:ILZ1Ngh2f1pL1ASUj7gGk8lGFeNC8cRTaN2ZhsBNbXU=
golang.org/x/crypto v0.0.0-20210616213533-5cf6c0f8e123 h1:b6rCu+qHze+BUsmC3CZzH8aNu8LzPZTVsNTo64OypSc=
golang.org/x/crypto v0.0.0-20210616213533-5cf6c0f8e123/go.mod h1:K5Dkpb0Q4ewZW/EzWlQphgJcUMBCzoWrLfDOVzpTGVQ=
```

**Note**  
 Chacun de ces fichiers produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### Binaires Go
<a name="w2aac37c23b5b7"></a>

 Le générateur Amazon Inspector SBOM extrait les dépendances Go des fichiers binaires compilés pour garantir le code utilisé. 

**Note**  
 Le générateur Amazon Inspector SBOM permet de capturer et d'évaluer les versions de la chaîne d'outils à partir de Go fichiers binaires créés à l'aide du compilateur officiel. Go Pour plus d'informations, consultez [la section Téléchargement et installation](https://go.dev/doc/install) sur le Go site Web. Si vous utilisez la Go chaîne d'outils d'un autre fournisseur, par exempleRed Hat, l'évaluation peut ne pas être précise en raison de différences potentielles dans la distribution et la disponibilité des métadonnées. 

**Fonctions principales**
+  Extrait les informations de dépendance directement à partir des Go fichiers binaires 
+  Collecte les dépendances intégrées dans le binaire 
+  Détecte et extrait la version de la Go chaîne d'outils utilisée pour compiler le binaire. 

### GOMODCACHE
<a name="w2aac37c23b5b9"></a>

 Le générateur Amazon Inspector SBOM analyse le cache du Go module pour collecter des informations sur les dépendances installées. Ce cache stocke les modules téléchargés pour s'assurer que les mêmes versions sont utilisées dans les différentes versions. 

**Fonctions principales**
+  Analyse le `GOMODCACHE` répertoire pour identifier les modules mis en cache 
+  Extrait les métadonnées détaillées, y compris les noms des modules, les versions et les sources URLs 

**Exemple de structure**  
 Voici un exemple de `GOMODCACHE` structure. 

```
~/go/pkg/mod/
├── github.com/gin-gonic/gin@v1.7.2
├── golang.org/x/crypto@v0.0.0-20210616213533-5cf6c0f8e123
```

**Note**  
 Cette structure produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

## Analyse des dépendances Java
<a name="w2aac37c23b7"></a>


| Langage de programmation | Gestionnaire de packages | Artefacts supportés | Support de la chaîne d'outils | Dépendances de développement | Dépendances transitives | Drapeau privé | Récursivement | 
| --- | --- | --- | --- | --- | --- | --- | --- | 
| Java | Maven |  JavaApplications compilées (.jar/.war/.ear) `pom.xml`  |  N/A N/A  |  N/A N/A  |  Oui Oui  |  N/A N/A  |  Oui Oui  | 

**Note**  
 Notre fonctionnalité d'évaluation des vulnérabilités ne prend en charge que le référentiel Maven Central. Les référentiels tiers, tels JBoss Enterprise Maven Repository que, ne sont actuellement pas pris en charge. 

 Le générateur Amazon Inspector SBOM effectue une analyse des Java dépendances en analysant les Java applications et `pom.xml` les fichiers compilés. Lors de l'analyse d'applications compilées, le scanner génère des hachages SHA-1 pour vérifier l'intégrité, extrait `pom.properties` les fichiers intégrés et analyse les fichiers imbriqués. `pom.xml` 

### collection de hachage SHA-1 (pour les fichiers .jar, .war, .ear compilés)
<a name="w2aac37c23b7b9"></a>

 Le générateur Amazon Inspector SBOM essaie de collecter les hachages SHA-1 pour tous `.ear``.jar`, ainsi que les `.war` fichiers d'un projet afin de garantir l'intégrité et la traçabilité des artefacts compilés. Java 

**Fonctions principales**
+  Génère des hachages SHA-1 pour tous les artefacts compilés Java 

**Exemple d'artefact**  
 Voici un exemple d'artefact SHA-1. 

```
{
  "bom-ref": "comp-52",
  "type": "library",
  "name": "jul-to-slf4j",
  "version": "2.0.6",
  "hashes": [
    {
      "alg": "SHA-1",
      "content": ""
    }
  ],
  "purl": "pkg:maven/jul-to-slf4j@2.0.6",
  "properties": [
    {
      "name": "amazon:inspector:sbom_generator:source_path",
      "value": "test-0.0.1-SNAPSHOT.jar/BOOT-INF/lib/jul-to-slf4j-2.0.6.jar"
    }
  ]
}
```

**Note**  
 Cet artefact produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### pom.properties
<a name="w2aac37c23b7c11"></a>

 Le `pom.properties` fichier est utilisé dans les Maven projets pour stocker les métadonnées du projet, notamment les noms et les versions des packages. Le générateur Amazon Inspector SBOM analyse ce fichier pour collecter des informations sur le projet. 

**Fonctions principales**
+  Analyse et extrait les artefacts, les groupes de packages et les versions des packages 

**Exemple de fichier `pom.properties`**  
 Voici un exemple de fichier `pom.properties`. 

```
#Generated by Maven
#Tue Mar 16 15:44:02 UTC 2021

version=1.6.0
groupId=net.datafaker
artifactId=datafaker
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

**À l'exclusion de l'analyse imbriquée `pom.xml`**  
 Si vous souhaitez exclure l'analyse `pom.xml` syntaxique lors de l'analyse d'Javaapplications compilées, utilisez l'`--skip-nested-pomxml`argument. 

### pom.xml
<a name="w2aac37c23b7c13"></a>

 Le `pom.xml` fichier est le fichier de configuration de base pour les Maven projets. Il contient des informations sur les projets et leurs dépendances. Le générateur Amazon Inspector SBOM analyse les pom.xml fichiers pour collecter les dépendances, en analysant les fichiers autonomes dans les référentiels et les fichiers contenus dans les fichiers compilés. .jar 

**Fonctions principales**
+  Analyse et extrait les artefacts de packages, les groupes de packages et les versions de packages à partir de `pom.xml` fichiers. 

**Étendue et Maven tags pris en charge**  
 Les dépendances sont collectées avec les Maven étendues suivantes : 
+  compile 
+  fourni 
+  environnement d’exécution 
+  test 
+  system 
+  importer 

 Les dépendances sont collectées avec la Maven balise suivante :`<optional>true</optional>`. 

**Exemple de `pom.xml` fichier avec une portée**  
 Voici un exemple de `pom.xml` fichier doté d'une portée. 

```
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
</version>6.0.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.28</version>
<scope>runtime</scope>
</dependency>
```

**Exemple `pom.xml` de fichier sans portée**  
 Voici un exemple de `pom.xml` fichier sans portée. 

```
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.17.1</version>
</dependency>

<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>plain-credentials</artifactId>
<version>183.va_de8f1dd5a_2b_</version>
</dependency>

<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>jackson2-api</artifactId>
<version>2.15.2-350.v0c2f3f8fc595</version>
</dependency>
```

**Note**  
 Chacun de ces fichiers produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

## JavaScript analyse des dépendances
<a name="w2aac37c23b9"></a>


| Langage de programmation | Gestionnaire de packages | Artefacts supportés | Support de la chaîne d'outils | Dépendances de développement | Dépendances transitives | Drapeau privé | Récursivement | 
| --- | --- | --- | --- | --- | --- | --- | --- | 
| Javascript |  `Node Modules` `NPM` `PNPM` `YARN`  |  `node_modules/*/package.json` `package-lock.json (v1, v2, and v3) / npm-shrinkwrap.json` `pnpm-lock.yaml` `yarn.lock`  |  N/A N/A N/A N/A  |  N/A Oui Oui Oui  |  Oui N/A N/A N/A  |  Oui N/A N/A N/A  |  Oui Non Non Non  | 

### package.json
<a name="w2aac37c23b9b5"></a>

 Le `package.json` fichier est un élément essentiel des Node.js projets. Il contient des métadonnées sur les packages installés. Le générateur SBOM d'Amazon Inspector analyse ce fichier pour identifier les noms et les versions des packages. 

**Fonctions principales**
+  Analyse la structure du fichier JSON pour extraire les noms et les versions des packages 
+  Identifie les packages privés avec des valeurs privées 

**Exemple de fichier `package.json`**  
 Voici un exemple de fichier `package.json`. 

```
{
"name": "arrify",
"private": true,
"version": "2.0.1",
"description": "Convert a value to an array",
"license": "MIT",
"repository": "sindresorhus/arrify"
}
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### package-lock.json
<a name="w2aac37c23b9b7"></a>

 Le `package-lock.json` fichier est automatiquement généré par npm pour verrouiller les versions exactes des dépendances installées pour un projet. Il garantit la cohérence des environnements en stockant les versions exactes de toutes les dépendances et de leurs sous-dépendances. Ce fichier permet de faire la distinction entre les dépendances classiques et les dépendances de développement. 

**Fonctions principales**
+  Analyse la structure du fichier JSON pour extraire les noms et les versions des packages 
+  Supporte la détection des dépendances des développeurs 

**Exemple de fichier `package-lock.json`**  
 Voici un exemple de fichier `package-lock.json`. 

```
"verror": {
"version": "1.10.0",
"resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
"integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
"requires": {
    "assert-plus": "^1.0.0",
    "core-util-is": "1.0.2",
    "extsprintf": "^1.2.0"
}
},
"wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
"dev": true
},
"yallist": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz",
"integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k="
}
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### npm-shrinkwrap.json
<a name="w2aac37c23b9b9"></a>

 npmgénère automatiquement `package-lock.json` des `npm-shrinkwrap.json` fichiers pour verrouiller les versions exactes des dépendances installées pour un projet. Cela garantit la cohérence des environnements en stockant les versions exactes de toutes les dépendances et sous-dépendances. Les fichiers font la distinction entre les dépendances classiques et les dépendances de développement. 

**Fonctions principales**
+  Analyser `package-lock` les versions 1, 2 et 3 de la structure du JSON fichier pour extraire le nom et la version du package 
+  La détection des dépendances des développeurs est prise en charge (`package-lock.json`capture les dépendances de production et de développement, permettant aux outils d'identifier les packages utilisés dans les environnements de développement) 
+  Le `npm-shrinkwrap.json` fichier est prioritaire par rapport au `package-lock.json` fichier 

**Exemple**  
 Voici un exemple de fichier `package-lock.json`. 

```
"verror": {
            "version": "1.10.0",
            "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
            "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
            "requires": {
                "assert-plus": "^1.0.0",
                "core-util-is": "1.0.2",
                "extsprintf": "^1.2.0"
            }
        },
        "wrappy": {
            "version": "1.0.2",
            "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
            "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
            "dev": true
        },
        "yallist": {
            "version": "3.0.2",
            "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz",
            "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k="
}
```

### pnpm-yaml.lock
<a name="w2aac37c23b9c11"></a>

 Le `pnpm-lock.yaml` fichier est généré par pnpm pour conserver un enregistrement des versions de dépendance installées. Il suit également les dépendances de développement séparément. 

**Fonctions principales**
+  Analyse la structure du fichier YAML pour extraire les noms et les versions des packages 
+  Supporte la détection des dépendances des développeurs 

**Exemple**  
 Voici un exemple de fichier `pnpm-lock.yaml`. 

```
lockfileVersion: 5.3
importers:
my-project:
dependencies:
  lodash: 4.17.21
devDependencies:
  jest: 26.6.3
specifiers:
  lodash: ^4.17.21
  jest: ^26.6.3
packages:
/lodash/4.17.21:
resolution:
  integrity: sha512-xyz
engines:
  node: '>=6'
dev: false
/jest/26.6.3:
resolution:
  integrity: sha512-xyz
dev: true
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### yarn.lock
<a name="w2aac37c23b9c13"></a>

 Le générateur Amazon Inspector SBOM essaie de collecter les hachages SHA-1 pour `.ear``.jar`, et les `.war` fichiers d'un projet afin de garantir l'intégrité et la traçabilité des artefacts compilés. Java 

**Fonctions principales**
+  Génère des hachages SHA-1 pour tous les artefacts compilés Java 

**Exemple d'artefact SHA-1**  
 Voici un exemple d'artefact SHA-1. 

```
"@ampproject/remapping@npm:^2.2.0":
version: 2.2.0
resolution: "@ampproject/remapping@npm:2.2.0"
dependencies:
"@jridgewell/gen-mapping": ^0.1.0
"@jridgewell/trace-mapping": ^0.3.9
checksum: d74d170d06468913921d72430259424b7e4c826b5a7d39ff839a29d547efb97dc577caa8ba3fb5cf023624e9af9d09651afc3d4112a45e2050328abc9b3a2292
languageName: node
linkType: hard

"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.18.6, @babel/code-frame@npm:^7.21.4":
version: 7.21.4
resolution: "@babel/code-frame@npm:7.21.4"
dependencies:
"@babel/highlight": ^7.18.6
checksum: e5390e6ec1ac58dcef01d4f18eaf1fd2f1325528661ff6d4a5de8979588b9f5a8e852a54a91b923846f7a5c681b217f0a45c2524eb9560553160cd963b7d592c
languageName: node
linkType: hard
```

**Note**  
 Cet artefact produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

## Analyse des dépendances .NET
<a name="w2aac37c23c11"></a>


| Langage de programmation | Gestionnaire de packages | Artefacts supportés | Support de la chaîne d'outils | Dépendances de développement | Dépendances transitives | Drapeau privé | Récursivement | 
| --- | --- | --- | --- | --- | --- | --- | --- | 
| .NET |  `.NET Core` `Nuget` `Nuget` `.NET`  |  `*.deps.json` `Packages.config` `packages.lock.json` `.csproj`  |  N/A N/A N/A N/A  |  N/A N/A N/A N/A  |  N/A N/A Oui N/A  |  N/A N/A N/A N/A  |  Oui Oui Oui Oui  | 

### Packages.config
<a name="w2aac37c23c11b5"></a>

 Le `Packages.config` fichier est un fichier XML utilisé par une ancienne version de Nuget pour gérer les dépendances du projet. Il répertorie tous les packages référencés par le projet, y compris les versions spécifiques. 

**Fonctions principales**
+  Analyse la structure XML pour extraire le package IDs et les versions 

**Exemple**  
 Voici un exemple de fichier `Packages.config`. 

```
<?xml version="1.0" encoding="utf-8"? >
<packages>
<package id="FluentAssertions" version="5.4.1" targetFramework="net461" />
<package id="Newtonsoft.Json" version="11.0.2" targetFramework="net461" />
<package id="SpecFlow" version="2.4.0" targetFramework="net461" />
<package id="SpecRun.Runner" version="1.8.0" targetFramework="net461" />
<package id="SpecRun.SpecFlow" version="1.8.0" targetFramework="net461" />
<package id="SpecRun.SpecFlow.2-4-0" version="1.8.0" targetFramework="net461" />
<package id="System.ValueTuple" version="4.5.0" targetFramework="net461" />
</packages>
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### \$1.deps.json
<a name="w2aac37c23c11b7"></a>

 Le `*.deps.json` fichier est généré par les .NET Core projets et contient des informations détaillées sur toutes les dépendances, notamment les chemins, les versions et les dépendances d'exécution. Ce fichier garantit que le moteur d'exécution dispose des informations nécessaires pour charger les versions correctes des dépendances. 

**Fonctions principales**
+ Analyse la structure JSON pour obtenir des détails complets sur les dépendances
+  Extrait les noms et les versions des packages dans une `libraries` liste. 

**Exemple de fichier `.deps.json`**  
 Voici un exemple de fichier `.deps.json`. 

```
{
"runtimeTarget": {
    "name": ".NETCoreApp,Version=v7.0",
    "signature": ""
},
"libraries": {
    "sample-Nuget/1.0.0": {
        "type": "project",
        "serviceable": false,
        "sha512": ""
    },
    "Microsoft.EntityFrameworkCore/7.0.5": {
        "type": "package",
        "serviceable": true,
        "sha512": "sha512-RXbRLHHWP2Z3pq8qcL5nQ6LPeoOyp8hasM5bd0Te8PiQi3RjWQR4tcbdY5XMqQ+oTO9wA8/RLhZRn/hnxlTDnQ==",
        "path": "microsoft.entityframeworkcore/7.0.5",
        "hashPath": "microsoft.entityframeworkcore.7.0.5.nupkg.sha512"
    },
}
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### packages.lock.json
<a name="w2aac37c23c11b9"></a>

 Le `packages.lock.json` fichier est utilisé par les nouvelles versions de Nuget pour verrouiller les versions exactes des dépendances d'un .NET projet afin de garantir que les mêmes versions sont utilisées de manière cohérente dans différents environnements. 

**Fonctions principales**
+ Analyse la structure JSON pour répertorier les dépendances verrouillées
+ Supporte les dépendances directes et transitives
+ Extrait le nom du package et les versions résolues

**Exemple de fichier `packages.lock.json`**  
 Voici un exemple de fichier `packages.lock.json`. 

```
{
"version": 1,
"dependencies": {
"net7.0": {
  "Microsoft.EntityFrameworkCore": {
    "type": "Direct",
    "requested": "[7.0.5, )",
    "resolved": "7.0.5",
    "contentHash": "RXbRLHHWP2Z3pq8qcL5nQ6LPeoOyp8hasM5bd0Te8PiQi3RjWQR4tcbdY5XMqQ+oTO9wA8/RLhZRn/hnxlTDnQ==",
    "dependencies": {
      "Microsoft.EntityFrameworkCore.Abstractions": "7.0.5",
      "Microsoft.EntityFrameworkCore.Analyzers": "7.0.5",
      "Microsoft.Extensions.Caching.Memory": "7.0.0",
      "Microsoft.Extensions.DependencyInjection": "7.0.0",
      "Microsoft.Extensions.Logging": "7.0.0"
    }
  },
  "Newtonsoft.Json": {
    "type": "Direct",
    "requested": "[13.0.3, )",
    "resolved": "13.0.3",
    "contentHash": "HrC5BXdl00IP9zeV+0Z848QWPAoCr9P3bDEZguI+gkLcBKAOxix/tLEAAHC+UvDNPv4a2d18lOReHMOagPa+zQ=="
  },
  "Microsoft.Extensions.Primitives": {
    "type": "Transitive",
    "resolved": "7.0.0",
    "contentHash": "um1KU5kxcRp3CNuI8o/GrZtD4AIOXDk+RLsytjZ9QPok3ttLUelLKpilVPuaFT3TFjOhSibUAso0odbOaCDj3Q=="
  }
}
}
}
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### .csproj
<a name="w2aac37c23c11c11"></a>

 Le `.csproj` fichier est écrit en XML et le fichier de projet pour les .NET projets. Il inclut des références aux Nuget packages, aux propriétés du projet et aux configurations de construction. 

**Fonctions principales**
+  Analyse le XML de la structure pour extraire les références des packages 

**Exemple de fichier `.csproj`**  
 Voici un exemple de fichier `.csproj`. 

```
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<RootNamespace>sample_Nuget</RootNamespace>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<RestorePackagesWithLockFile>true</RestorePackagesWithLockFile>
</PropertyGroup>
<ItemGroup>
</ItemGroup>
<ItemGroup>
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="7.0.5" />
</ItemGroup>
</Project>
```

**Exemple de fichier `.csproj`**  
 Voici un exemple de fichier `.csproj`. 

```
<PackageReference Include="ExamplePackage" Version="6.*" />
<PackageReferencePackageReference Include="ExamplePackage" Version="(4.1.3,)" />
<PackageReference Include="ExamplePackage" Version="(,5.0)" />
<PackageReference Include="ExamplePackage" Version="[1,3)" />
<PackageReference Include="ExamplePackage" Version="[1.3.2,1.5)" />
```

**Note**  
 Chacun de ces fichiers produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

## Analyse des dépendances PHP
<a name="w2aac37c23c13"></a>


| Langage de programmation | Gestionnaire de packages | Artefacts supportés | Support de la chaîne d'outils | Dépendances de développement | Dépendances transitives | Drapeau privé | Récursivement | 
| --- | --- | --- | --- | --- | --- | --- | --- | 
| PHP | Composer |  `composer.lock` `/vendor/composer/installed.json`  |  N/A N/A  |  N/A N/A  |  Oui Oui  |  N/A N/A  |  Oui Oui  | 

### composer.lock
<a name="w2aac37c23c13b5"></a>

 Le `composer.lock` fichier est automatiquement généré lors de l'exécution des commandes d'installation ou de mise à jour du compositeur. Ce fichier garantit que les mêmes versions des dépendances sont installées dans tous les environnements. Cela fournit un processus de construction cohérent et fiable. 

**Fonctions principales**
+  Analyse le format JSON pour les données structurées 
+  Extrait les noms et les versions des dépendances 

**Exemple de fichier `composer.lock`**  
 Voici un exemple de fichier `composer.lock`. 

```
{
"packages": [
    {
        "name": "nesbot/carbon",
        "version": "2.53.1",
        // TRUNCATED
    },
    {
        "name": "symfony/deprecation-contracts",
        "version": "v3.2.1",
        // TRUNCATED
    },
    {
        "name": "symfony/polyfill-mbstring",
        "version": "v1.27.0",
        // TRUNCATED
    }
]
// TRUNCATED
}
```

**Note**  
 Cela produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### /vendor/composer/installed.json
<a name="w2aac37c23c13b7"></a>

 Le `/vendor/composer/installed.json` fichier se trouve dans le `vendor/composer` répertoire et fournit une liste complète de tous les packages installés et de toutes les versions de packages. 

**Fonctions principales**
+  Analyse le format JSON pour les données structurées 
+  Extrait les noms et les versions des dépendances 

**Exemple de fichier `/vendor/composer/installed.json`**  
 Voici un exemple de fichier `/vendor/composer/installed.json`. 

```
 
{
"packages": [
    {
        "name": "nesbot/carbon",
        "version": "2.53.1",
        // TRUNCATED
    },
    {
        "name": "symfony/deprecation-contracts",
        "version": "v3.2.1",
        // TRUNCATED
    },
    {
        "name": "symfony/polyfill-mbstring",
        "version": "v1.27.0",
        // TRUNCATED
    }
]
// TRUNCATED
}
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

## Analyse des dépendances en Python
<a name="w2aac37c23c15"></a>


| Langage de programmation | Gestionnaire de packages | Artefacts supportés | Support de la chaîne d'outils | Dépendances de développement | Dépendances transitives | Drapeau privé | Récursivement | 
| --- | --- | --- | --- | --- | --- | --- | --- | 
| Python |  `pip` `Poetry` `Pipenv` `uv` `Egg/Wheel`  |  `requirements.txt` `Poetry.lock` `Pipfile.lock` `uv.lock` `.egg-info/PKG-INFO` `.dist-info/METADATA`  |  N/A N/A N/A N/A N/A N/A  |  N/A N/A N/A Oui N/A N/A  |  N/A N/A N/A N/A N/A N/A  |  N/A N/A N/A N/A N/A N/A  |  Oui Oui Oui Oui Oui Oui  | 

### requirements.txt
<a name="w2aac37c23c15b5"></a>

 Le `requirements.txt` fichier est un format largement utilisé dans les Python projets pour spécifier les dépendances des projets. Chaque ligne de ce fichier inclut un package avec ses contraintes de version. Le générateur Amazon Inspector SBOM analyse ce fichier pour identifier et cataloguer les dépendances avec précision. 

**Fonctions principales**
+  Supporte les spécificateurs de version (== et xRip=) 
+  Supporte les commentaires et les lignes de dépendance complexes 

**Note**  
 Les spécificateurs de version <= et => ne sont pas pris en charge. 

**Exemple de fichier `requirements.txt`**  
 Voici un exemple de fichier `requirements.txt`. 

```
flask==1.1.2
requests==2.24.0
numpy==1.18.5
foo~=1.2.0
# Comment about a dependency
scipy. # invalid
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### Pipfile.lock
<a name="w2aac37c23c15b9"></a>

 Pipenvest un outil qui offre le meilleur de tous les mondes de l'emballage (groupé, épinglé et non épinglé). Il `Pipfile.lock` verrouille les versions exactes des dépendances pour faciliter les constructions déterministes. Le générateur Amazon Inspector SBOM lit ce fichier pour répertorier les dépendances et leurs versions résolues. 

**Fonctions principales**
+  Analyse le format JSON pour la résolution des dépendances 
+  Supporte les dépendances par défaut et de développement 

**Exemple de fichier `Pipfile.lock`**  
 Voici un exemple de fichier `Pipfile.lock`. 

```
{
"default": {
    "requests": {
        "version": "==2.24.0",
        "hashes": [
            "sha256:cc718bb187e53b8d"
        ]
    }
},
"develop": {
    "blinker": {
        "hashes": [
            "sha256:1779309f71bf239144b9399d06ae925637cf6634cf6bd131104184531bf67c01",
            "sha256:8f77b09d3bf7c795e969e9486f39c2c5e9c39d4ee07424be2bc594ece9642d83"
        ],
        "markers": "python_version >= '3.8'",
        "version": "==1.8.2"
    }
}
}
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### Poetry.lock
<a name="w2aac37c23c15c11"></a>

 Poetryest un outil de gestion des dépendances et d'empaquetage pour Python. Le `Poetry.lock` fichier verrouille les versions exactes des dépendances afin de garantir la cohérence des environnements. Le générateur Amazon Inspector SBOM extrait des informations de dépendance détaillées à partir de ce fichier. 

**Fonctions principales**
+  Analyse le format TOML pour les données structurées 
+  Extrait les noms et les versions des dépendances 

**Exemple de fichier `Poetry.lock`**  
 Voici un exemple de fichier `Poetry.lock`. 

```
[[package]]
name = "flask"
version = "1.1.2"
description = "A simple framework for building complex web applications."
category = "main"
optional = false
python-versions = ">=3.5"
[[package]]
name = "requests"
version = "2.24.0"
description = "Python HTTP for Humans."
category = "main"
optional = false
python-versions = ">=3.5"
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### verrou UV
<a name="w2aac37c23c15c13"></a>

 uvest un gestionnaire de Python paquets rapide écrit enRust. Le `uv.lock` fichier verrouille les versions exactes des dépendances afin de garantir la cohérence des environnements. Le générateur Amazon Inspector SBOM extrait des informations de dépendance détaillées à partir de ce fichier. 

**Fonctions principales**
+  Analyse le TOML formaté pour les données structurées `uv.lock` 
+  Extrait les noms et les versions des dépendances 
+  Supporte les dépendances liées au développement 
+  Collecte uniquement les packages dont la source est un registre 

**Exemple de fichier `uv.lock`**  
 Voici un exemple de fichier `uv.lock`. 

```
version = 1
requires-python = ">=3.12"

[[package]]
name = "flask"
version = "3.1.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
    { name = "blinker" },
    { name = "click" },
    { name = "itsdangerous" },
    { name = "jinja2" },
    { name = "markupsafe" },
    { name = "werkzeug" },
]

[[package]]
name = "pytest"
version = "8.3.4"
source = { registry = "https://pypi.org/simple" }
dependencies = [
    { name = "iniconfig" },
    { name = "packaging" },
    { name = "pluggy" },
]

[package.dev-dependencies]
dev = [
    { name = "pytest" },
]
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### Œuf/Roue
<a name="w2aac37c23c15c15"></a>

 Pour les packages Python installés dans le monde entier, le générateur Amazon Inspector SBOM prend en charge l'analyse des fichiers de métadonnées trouvés dans les `.egg-info/PKG-INFO` répertoires et. `.dist-info/METADATA` Ces fichiers fournissent des métadonnées détaillées sur les packages installés. 

**Fonctions principales**
+  Extrait le nom et la version du package 
+  Supporte les formats « œuf » et « roue » 

**Exemple de fichier `PKG-INFO/METADATA`**  
 Voici un exemple de fichier `PKG-INFO/METADATA`. 

```
Metadata-Version: 1.2
Name: Flask
Version: 1.1.2
Summary: A simple framework for building complex web applications.
Home-page: https://palletsprojects.com/p/flask/
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

## Analyse des dépendances Ruby
<a name="w2aac37c23c17"></a>


| Langage de programmation | Gestionnaire de packages | Artefacts supportés | Assistance à la chaîne d'outils | Dépendances de développement | Dépendances transitives | Drapeau privé | Récursivement | 
| --- | --- | --- | --- | --- | --- | --- | --- | 
| Ruby | Bundler |  `Gemfile.lock` `.gemspec` `globall installed Gems`  |  N/A N/A N/A  |  N/A N/A N/A  |  Oui N/A N/A  |  N/A N/A N/A  |  Oui Oui Oui  | 

### Gemfile.lock
<a name="w2aac37c23c17b5"></a>

 Le `Gemfile.lock` fichier verrouille les versions exactes de toutes les dépendances afin de garantir que les mêmes versions sont utilisées dans tous les environnements. 

**Fonctions principales**
+  Analyse le `Gemfile.lock` fichier pour identifier les dépendances et les versions des dépendances 
+  Extrait les noms détaillés des packages et les versions des packages 

**Exemple de fichier `Gemfile.lock`**  
 Voici un exemple de fichier `Gemfile.lock`. 

```
GEM
remote: https://rubygems.org/
specs:
ast (2.4.2)
awesome_print (1.9.2)
diff-lcs (1.5.0)
json (2.6.3)
parallel (1.22.1)
parser (3.2.2.0)
nokogiri (1.16.6-aarch64-linux)
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### .gemspec
<a name="w2aac37c23c17b7"></a>

 Le `.gemspec` fichier est un RubyGem fichier contenant des métadonnées relatives à une gemme. Le générateur Amazon Inspector SBOM analyse ce fichier pour collecter des informations détaillées sur une gemme. 

**Fonctions principales**
+  Analyse et extrait le nom et la version de la gemme 

**Note**  
 La spécification de référence n'est pas prise en charge. 

**Exemple de fichier `.gemspec`**  
 Voici un exemple de fichier `.gemspec`. 

```
Gem::Specification.new do |s|
s.name        = "generategem"
s.version     = "2.0.0"
s.date        = "2020-06-12"
s.summary     = "generategem"
s.description = "A Gemspec Builder"
s.email       = "edersondeveloper@gmail.com"
s.files       = ["lib/generategem.rb"]
s.homepage    = "https://github.com/edersonferreira/generategem"
s.license     = "MIT"
s.executables = ["generategem"]
s.add_dependency('colorize', '~> 0.8.1')
end
```

```
# Not supported 

Gem::Specification.new do |s|
s.name        = &class1
s.version     = &foo.bar.version
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### Gemmes installées dans le monde entier
<a name="w2aac37c23c17b9"></a>

 Le générateur Amazon Inspector SBOM prend en charge l'analyse des gemmes installées dans le monde entier, qui se trouvent dans des annuaires standard, tels que `/usr/local/lib/ruby/gems/<ruby_version>/gems/` Amazon EC2/Amazon ECR et Lambda. `ruby/gems/<ruby_version>/gems/` Cela permet de s'assurer que toutes les dépendances installées dans le monde entier sont identifiées et cataloguées. 

**Fonctions principales**
+  Identifie et analyse toutes les gemmes installées dans le monde entier dans les répertoires standard 
+  Extrait les métadonnées et les informations de version pour chaque gem installée dans le monde entier 

**Exemple de structure de répertoire**  
 Voici un exemple de structure de répertoire. 

```
. 
└── /usr/local/lib/ruby/3.5.0/gems/ 
├── actrivesupport-6.1.4 
├── concurrent-ruby-1.1.9 
└── i18n-1.8.10
```

**Note**  
 Cette structure produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

## Analyse des dépendances Rust
<a name="w2aac37c23c19"></a>


| Langage de programmation | Gestionnaire de packages | Artefacts supportés | Support de la chaîne d'outils | Dépendances de développement | Dépendances transitives | Drapeau privé | Récursivement | 
| --- | --- | --- | --- | --- | --- | --- | --- | 
| Rust | Cargo.toml |  `Cargo.toml` `Cargo.lock`  `Rust binary (built with cargo-auditable)`  |  N/A N/A Oui  |  N/A N/A N/A  |  N/A Oui N/A  |  N/A N/A N/A  |  Oui Oui Oui  | 

### Cargo en ml
<a name="w2aac37c23c19b5"></a>

 Le `Cargo.toml` fichier est le fichier manifeste des Rust projets. 

**Fonctions principales**
+  Analyse et extrait le `Cargo.toml` fichier pour identifier le nom et la version du package du projet. 

**Exemple de fichier `Cargo.toml`**  
 Voici un exemple de fichier `Cargo.toml`. 

```
[package]
name = "wait-timeout"
version = "0.2.0"
description = "A crate to wait on a child process with a timeout specified across Unix and\nWindows platforms.\n"
homepage = "https://github.com/alexcrichton/wait-timeout"
documentation = "https://docs.rs/wait-timeout"
readme = "README.md"
categories = ["os"]
license = "MIT/Apache-2.0"
repository = "https://github.com/alexcrichton/wait-timeout"
[target."cfg(unix)".dependencies.libc]
version = "0.2"
[badges.appveyor]
repository = "alexcrichton/wait-timeout"
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### Cargo.lock
<a name="w2aac37c23c19b7"></a>

 Le `Cargo.lock` fichier verrouille les versions de dépendance pour s'assurer que les mêmes versions sont utilisées chaque fois qu'un projet est créé. 

**Fonctions principales**
+  Analyse le `Cargo.lock` fichier pour identifier toutes les dépendances et les versions de dépendance. 

**Exemple de fichier `Cargo.lock`**  
 Voici un exemple de fichier `Cargo.lock`. 

```
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
[[package]]
name = "adler32"
version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"

[[package]]
name = "aho-corasick"
version = "0.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
```

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

### Binaires Rust avec cargo-auditable
<a name="w2aac37c23c19b9"></a>

 Le générateur Amazon Inspector SBOM collecte les dépendances à partir des Rust fichiers binaires créés avec la bibliothèque. `cargo-auditable` Cela fournit des informations de dépendance supplémentaires en permettant l'extraction des dépendances à partir de fichiers binaires compilés. 

**Fonctions principales**
+  Extrait les informations de dépendance directement à partir Rust des fichiers binaires créés avec la bibliothèque `cargo-auditable` 
+  Récupère les métadonnées et les informations de version pour les dépendances incluses dans les fichiers binaires 

**Note**  
 Ce fichier produit une sortie contenant l'URL du package. Cette URL peut être utilisée pour spécifier des informations sur les progiciels lors de la génération d'une nomenclature logicielle et peut être incluse dans l'[ScanSbom](https://docs.aws.amazon.com/inspector/v2/APIReference/API_inspector-scan_ScanSbom.html)API. Pour plus d'informations, consultez [package-url](https://github.com/package-url/purl-spec) sur le GitHub site Web. 

## Artefacts non pris en charge
<a name="w2aac37c23c21"></a>

 Cette section décrit les artefacts non pris en charge. 

### Java
<a name="w2aac37c23c21b5"></a>

 Le générateur Amazon Inspector SBOM Generator prend uniquement en charge la détection des vulnérabilités pour les dépendances provenant [du référentiel standard. Maven](https://repo1.maven.org/maven2) MavenLes référentiels privés ou personnalisés, tels que Red Hat Maven etJenkins, ne sont pas pris en charge. Pour une détection précise des vulnérabilités, assurez-vous que Java les dépendances sont extraites du Maven référentiel principal. Les dépendances provenant d'autres référentiels ne seront pas couvertes par les analyses de vulnérabilité. 

### JavaScript
<a name="w2aac37c23c21b7"></a>

**bundles esbuild**  
 Pour les bundles esbuild minifiés, le générateur SBOM d'Amazon Inspector ne prend pas en charge l'analyse des dépendances pour les projets utilisant. esbuild Les cartes sources générées par esbuild n'incluent pas suffisamment de métadonnées (noms et versions des dépendances) requises pour une Sbomgen génération précise. Pour des résultats fiables, scannez les fichiers du projet d'origine, tels que le `node_modules/directory` et`package-lock.json`, avant le processus de regroupement. 

**package.json**  
 Le générateur Amazon Inspector SBOM ne prend pas en charge l'analyse des informations de dépendance dans le fichier package.json situé au niveau racine. Ce fichier indique uniquement les noms de packages et les plages de versions, mais n'inclut pas les versions de packages entièrement résolues. Pour des résultats de numérisation précis, utilisez `package.json` ou d'autres fichiers de verrouillage, tels que `yarn.lock` et`pnpm.lock`, qui incluent des versions résolues. 

### Dotnet
<a name="w2aac37c23c21b9"></a>

 Lorsque vous utilisez des versions flottantes ou des plages de versions`PackageReference`, il devient plus difficile de déterminer la version exacte du package utilisée dans un projet sans effectuer de résolution de package. Les versions flottantes et les plages de versions permettent aux développeurs de spécifier une plage de versions de package acceptables plutôt qu'une version fixe. 

### Binaires Go
<a name="w2aac37c23c21c11"></a>

 Le générateur Amazon Inspector SBOM ne scanne pas Go les fichiers binaires créés avec des indicateurs de compilation configurés pour exclure l'ID de build. Ces indicateurs de compilation empêchent Amazon Inspector SBOM Generator de mapper avec précision le binaire à sa source d'origine. GoLes fichiers binaires peu clairs ne sont pas pris en charge en raison de l'impossibilité d'extraire les informations du package. Pour une analyse précise des dépendances, assurez-vous que Go les fichiers binaires sont créés avec les paramètres par défaut, y compris l'ID de version. 

### Binaires Rust
<a name="w2aac37c23c21c13"></a>

 [Le générateur Amazon Inspector SBOM analyse les Rust fichiers binaires uniquement s'ils sont créés à l'aide de la bibliothèque cargo-auditable.](https://github.com/rust-secure-code/cargo-auditable) Rustles binaires n'utilisant pas cette bibliothèque ne disposent pas des métadonnées nécessaires pour une extraction précise des dépendances. Le générateur Amazon Inspector SBOM extrait la version compilée de la Rust chaîne d'outils à partir de la version Rust 1.7.3, mais uniquement pour les fichiers binaires d'un environnement. Linux Pour une analyse complète, créez des Rust fichiers binaires à l'Linuxaide de cargo-auditable. 

**Note**  
 La détection des vulnérabilités pour la Rust chaîne d'outils elle-même n'est pas prise en charge, même si la version de la chaîne d'outils est extraite. 