当方環境から外部への通信することができません。別の方法でスキャンすることはできすか?
可能です。
proxy を経由してインターネットに接続できる場合は以下のFAQも参照ください。
アプリライブラリのスキャンに必要なプロジェクトの情報をインターネットが繋がる環境に持ち出すことでスキャンを行うことができます。
yamoryのアプリライブラリスキャンでスキャン対象のファイルは下記リンクにまとまっています。Java系言語の場合は、依存ツリーを出力するコマンドの結果をインターネットが接続できる環境に持ち出すことでスキャンが可能です。
Mavenの場合の例
Mavenコマンドを実行できる環境がネットに繋がらない場合は、下記コマンドでdependency treeの出力結果をファイルにテキスト保存し、インターネットにつながる環境に.txtファイルを持ち出してください
mvn --projects sample_project dependency:tree -B -Dverbose=true > sample_project_dependency_tree.txt
※プロジェクト名は置き換えてください
※rootプロジェクトの場合は、—projectsの項目は削除してください
インターネットに繋がる環境で、上記の出力ファイル(sample_project_dependency_tree.txt)をyamoryのスキャンサーバーに接続します
cat sample_project_dependency_tree.txt | PROJECT_GROUP_KEY=sample YAMORY_API_KEY=xxxxxxxx YAMORY_OPEN_SYSTEM=true YAMORY_DISTRIBUTED=false bash -c "$(curl -sSf -L <https://yamory/script/>...)"
<aside>
💡 PROJECT_GROUP_KEY
, YAMORY_API_KEY
, https://yamory/script/...
は、アプリライブラリスキャンページから生成されたコマンドの情報に置き換えて実行してください
</aside>
Gradle,sbtの場合
Mavenの例を参考に、一度dependency treeをテキストファイルに出力し、それをインターネットに接続可能な環境に持ち出し、yamoryのスキャンサーバーに送信することで、閉環境でもスキャンすることが可能です。