11

ssh/scp の秘密鍵を使用するように Maven Wagon プラグインを構成できますか? 私が試したすべてのことは、scp-ingのポイントに達したときに、Mavenからパスワードを要求されます。

4

4 に答える 4

17

settings.xmlのserver要素で秘密鍵へのパスを指定できるはずです。

ダウンロードおよび展開用のリポジトリ は、POM の 要素repositories と 要素によって定義されます。distributionManagementただし、ユーザー名やパスワードなどの特定の設定は、pom.xml と一緒に配布しないでください。このタイプの情報は、ビルド サーバーの settings.xml に存在する必要があります。

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      http://maven.apache.org/xsd/settings-1.0.0.xsd">
  ...
  <servers>
    <server>
      <id>server001</id>
      <username>my_login</username>
      <password>my_password</password>
      <privateKey>${user.home}/.ssh/id_dsa</privateKey>
      <passphrase>some_passphrase</passphrase>
      <filePermissions>664</filePermissions>
      <directoryPermissions>775</directoryPermissions>
      <configuration></configuration>
    </server>
  </servers>
  ...
</settings>
  • id : これは、Maven が接続しようとするリポジトリ/ミラーの id 要素と一致するサーバーの ID (ログインするユーザーの ID ではありません) です。
  • usernamepassword : これらの要素は、このサーバーへの認証に必要なログインとパスワードを示すペアとして表示されます。
  • privateKey , passphrase : 前の 2 つの要素と同様に、このペアは秘密鍵へのパスを指定します (デフォルトは ${user.home}/.ssh/id_dsa)であり、必要に応じてパスフレーズです。パスフレーズとパスワードの要素は将来的に外部化される可能性がありますが、現時点ではプレーンに設定する必要があります。 settings.xml ファイル内のテキスト。
  • filePermissionsdirectoryPermissions : デプロイ時にリポジトリ ファイルまたはディレクトリが作成される場合、これらは使用する権限です。それぞれの有効な値は、*nix ファイルのアクセス許可に対応する 3 桁の数字です。664、または 775。

注: サーバーへのログインに秘密鍵を使用する場合は、必ず<password>要素を省略してください。それ以外の場合、キーは無視されます。

パスワード暗号化

新機能 - サーバーのパスワードとパスフレーズの暗号化が 2.1.x および 3.0 トランクに追加されました。詳細はこちらのページをご覧ください。

「注」に特に注意してください。秘密鍵を使用してサーバーにログインする場合は、要素を必ず省略してください。<password>それ以外の場合、キーは無視されます。したがって、最終的な構成は次のようになります。

<settings>
  ...
  <servers>
    <server>
      <id>ssh-repository</id>
      <username>your username in the remote system</username>
      <privateKey>/path/to/your/private/key</privateKey>
      <passphrase>sUp3rStr0ngP4s5wOrD</passphrase><!-- if required --> 
      <configuration>
        ...
      </configuration>
    </server>
  </servers>
  ...
</settings>
于 2010-04-28T23:10:05.267 に答える
1

ここで必要な情報を見つけました: http://maven.apache.org/plugins/maven-deploy-plugin/examples/deploy-ssh-external.html

于 2010-04-28T23:07:19.787 に答える