翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon Inspector SBOM Generator での未解決または非標準バージョンリファレンスの処理
Amazon Inspector SBOM Generator は、ソースファイルから直接依存関係を識別することで、システム内でサポートされているアーティファクトを見つけて解析します。パッケージマネージャーではないため、バージョン範囲を解決したり、動的な参照に基づいてバージョンを推測したり、レジストリ検索を処理したりしません。依存関係は、プロジェクトソースアーティファクトで定義されている場合にのみ収集されます。多くの場合、package.json、pom.xml、requirements.txt などのパッケージマニフェストの依存関係は、未解決のバージョンまたは範囲ベースのバージョンを使用して指定されます。このトピックでは、これらの依存関係の例を示します。
レコメンデーション
Amazon Inspector SBOM Generator はソースアーティファクトから依存関係を抽出しますが、バージョン範囲や動的参照を解決または解釈しません。より正確な脆弱性スキャンおよび SBOM を実現するために、プロジェクトの依存関係には解決済みのセマンティックバージョン識別子を使用することを推奨します。
Java
Java の場合、Maven プロジェクトはバージョン範囲を使用して pom.xml ファイル内の依存関係を定義できます。
<dependency> <groupId>org.inspector</groupId> <artifactId>inspector-api</artifactId> <version>(,1.0]</version> </dependency>
この範囲は、1.0 を含め、それ以前の任意のバージョンが許容されることを指定します。ただし、バージョンが解決済みバージョンでない場合、特定のリリースにマッピングできないため、Amazon Inspector SBOM Generator はそのバージョンを収集しません。
JavaScript
JavaScript の場合、package.json ファイルには次のようなバージョン範囲を含めることができます。
"dependencies": { "ky": "^1.2.0", "registry-auth-token": "^5.0.2", "registry-url": "^6.0.1", "semver": "^7.6.0" }
^ 演算子は、指定されたバージョン以上の任意のバージョンが許容されることを指定します。ただし、指定されたバージョンが解決済みバージョンでない場合、脆弱性検出中に誤検出が発生する可能性があるため、Amazon Inspector SBOM Generator はそのバージョンを収集しません。
Python
Pythonの場合、requirements.txt ファイルにはブール式を持つエントリを含めることができます。
requests>=1.0.0
>= 演算子は、 1.0.0 以上のバージョンが許容されることを指定します。この特定の式は正確なバージョンを指定しないため、Amazon Inspector SBOM Generator は脆弱性分析のためにバージョンを確実に収集することができません。
Amazon Inspector SBOM Generator は、ベータ版、最新版、スナップショットなどの非標準または不明瞭なバージョン識別子をサポートしていません。
pkg:maven/org.example.com/testmaven@1.0.2%20Beta-RC-1_Release
注記
Beta-RC-1_Release などの非標準的なサフィックスを使用すると、標準的なセマンティックバージョニングに準拠せず、Amazon Inspector の検出エンジンで脆弱性を評価できません。