4

ここSVNKitの初心者。svn リポジトリで認証する方法を理解するのに苦労しています。

基本的に、コマンド ライン SVN コードを使用してリポジトリに接続すると、証明書を受け入れ、ユーザー名とパスワードを要求するように指示されます。httpsも使用します。

しかし、私がウィキから見たコードを使用すると、このようなことが書かれていますが、これはなかなか機能しません。

ISVNAuthenticationManager authManager =
  SVNWCUtil.createDefaultAuthenticationManager(name, password);

独自の認証プロバイダーの作成についてどこかで読みましたが、これがどのように行われるかを教えてくれる十分なコードが見つからないようです。

SSL と証明書を使用して svn リポジトリに認証するにはどうすればよいですか?

4

1 に答える 1

3

目的に応じて、デフォルトの認証マネージャーを作成できます。

ISVNAuthenticationManager authManager = SVNWCUtil.createDefaultAuthenticationManager();

ディレクトリの設定を使用します~/.svn/

認証マネージャーがコンソールからパスワード/キーを要求するようにしたい場合は、SVNCommandEnvironment#createClientAuthenticationManager実装を見てください。

ただし、資格情報を列挙するだけで最も単純な認証マネージャーを作成することもできます (~/.svn/このオプションにはディレクトリは必要ありません)。

ISVNAuthenticationManager authManager = new 
    BasicAuthenticationManager(new SVNAuthentication[] {authentication1, authentication2, ...});

そのため、SVNSSLAuthenticationインスタンス (正しい証明書ファイルとパスフレーズを含む) を配列要素の 1 つとして渡すだけです。SVNKit は、成功するまでこれらの認証を試みます。

于 2012-10-18T11:31:29.363 に答える