機能リクエストは問題に関連していますか?
現在のazure-identity
アーティファクトにはいくつかの依存関係があり、通常はビルド時にのみ使用されます。 たとえば、 IntelliJCredential
実装で使用されるorg.linguafranca.pwdb:KeePassJava2
への依存関係があります。 本番デプロイメントでは、この依存関係を引き込みたくありません。 その理由の1つは、CVEを持つorg.simpleframework:simple-xml:jar:2.7.1
に推移的に依存していることです(https://nvd.nist.gov/vuln/detail/CVE-2017-1000190を参照)。 しかし、それはまた、他のいくつかの重い依存関係を引き込みます。
同じことがVisualStudioCodeCredential
ような他の実装にも当てはまるかもしれません。
希望するソリューションを説明してください
少なくとも、どの依存関係が特定の重要でない機能(たとえば、 IntelliJCredential
)にのみ関連付けられているか、およびこの機能が必要ない場合はそれらを除外しても安全であることをドキュメントに説明してください。 また、依存関係を除外する方法を文書化する必要があります。
検討した代替案を説明してください
別の方法は、依存関係をオプションとして宣言し、クライアントアプリケーションによって提供される必要があることを文書化することです。
さらに別の可能性は、さまざまなユースケースに個別のMavenアーティファクトを提供することです。
情報チェックリスト
上記のすべての情報を追加したことを確認し、必須フィールドをチェックしてください。そうしないと、発行者は不完全なレポートとして扱われます。
この問題を@knutwannhedenに提出していただきありがとうございます。 ドキュメントを改善して、オプションの依存関係をより明確にすることができます。 @ g2vinayフォローアップしていただけますか?
AFAICT依存関係はMavenモジュールでオプションとして宣言されていないため、対応するMavenメカニズムを使用して依存関係を除外する方法のヒントも意味があります。
このCVEは2017年からオープンしており、CVSSスコアは9.1CRITICALです。
この依存関係の取得を回避する方法に関するドキュメントは良いスタートですが、問題を修正する方が良いのではないでしょうか。
org.linguafranca.pwdb:KeePassJava2
はIntelliJCredential
によって使用されるため
展開時にDefaultIdentityBuilderの代わりにManagedIdentityCredentialBuilderを使用することで、これを回避することができました。