public class DefaultSVNPersistentAuthenticationProvider extends java.lang.Object implements ISVNAuthenticationProvider, ISVNPersistentAuthenticationProvider
Modifier and Type | Class and Description |
---|---|
protected class |
DefaultSVNPersistentAuthenticationProvider.GnomeKeyringPasswordStorage |
static interface |
DefaultSVNPersistentAuthenticationProvider.IPasswordStorage |
protected class |
DefaultSVNPersistentAuthenticationProvider.MacOsKeychainPasswordStorage |
protected class |
DefaultSVNPersistentAuthenticationProvider.SimplePasswordStorage |
protected class |
DefaultSVNPersistentAuthenticationProvider.WinCryptPasswordStorage |
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
GNOME_KEYRING_PASSTYPE |
static java.lang.String |
GNOME_KEYRING_PASSWORD_STORAGE |
static java.lang.String |
MAC_OS_KEYCHAIN_PASSTYPE |
static java.lang.String |
MAC_OS_KEYCHAIN_PASSWORD_STORAGE |
private ISVNAuthenticationStorageOptions |
myAuthOptions |
private DefaultSVNOptions |
myDefaultOptions |
private java.io.File |
myDirectory |
private ISVNHostOptionsProvider |
myHostOptionsProvider |
private DefaultSVNPersistentAuthenticationProvider.IPasswordStorage[] |
myPasswordStorages |
private java.lang.String |
myUserName |
static java.lang.String |
SIMPLE_PASSTYPE |
static java.lang.String |
WIN_CRYPT_PASSTYPE |
static java.lang.String |
WINDOWS_CRYPTO_API_PASSWORD_STORAGE |
ACCEPTED, ACCEPTED_TEMPORARY, REJECTED
Modifier | Constructor and Description |
---|---|
protected |
DefaultSVNPersistentAuthenticationProvider(java.io.File directory,
java.lang.String userName,
ISVNAuthenticationStorageOptions authOptions,
DefaultSVNOptions defaultOptions,
ISVNHostOptionsProvider hostOptionsProvider) |
Modifier and Type | Method and Description |
---|---|
int |
acceptServerAuthentication(SVNURL url,
java.lang.String r,
java.lang.Object serverAuth,
boolean resultMayBeStored)
Checks a server authentication certificate and whether accepts it
(if the client trusts it) or not.
|
protected DefaultSVNPersistentAuthenticationProvider.IPasswordStorage[] |
createPasswordStorages(DefaultSVNOptions options) |
protected java.lang.String |
getAuthFileName(java.lang.String realm) |
private DefaultSVNPersistentAuthenticationProvider.IPasswordStorage |
getPasswordStorage(java.lang.String passType) |
boolean |
isMSCapi(java.lang.String filepath) |
byte[] |
loadFingerprints(java.lang.String realm) |
protected java.lang.String |
preprocessRealm(java.lang.String realm) |
private char[] |
readPassphrase(java.lang.String realm,
DefaultSVNPersistentAuthenticationProvider.IPasswordStorage passwordStorage,
SVNProperties authValues) |
private char[] |
readPassword(java.lang.String realm,
java.lang.String userName,
DefaultSVNPersistentAuthenticationProvider.IPasswordStorage passwordStorage,
SVNProperties authValues) |
private SVNPasswordAuthentication |
readSSLPassphrase(java.lang.String kind,
java.lang.String realm,
boolean storageAllowed,
SVNURL url) |
private SVNPasswordAuthentication |
readSSLPassphrase(java.lang.String expectedCertificatePath,
SVNWCProperties props) |
SVNAuthentication |
requestClientAuthentication(java.lang.String kind,
SVNURL url,
java.lang.String realm,
SVNErrorMessage errorMessage,
SVNAuthentication previousAuth,
boolean authMayBeStored)
Returns a next user credential of the specified kind for the given
authentication realm.
|
void |
saveAuthentication(SVNAuthentication auth,
java.lang.String kind,
java.lang.String realm) |
void |
saveFingerprints(java.lang.String realm,
byte[] fingerprints) |
private void |
savePasswordCredential(SVNProperties values,
SVNAuthentication auth,
java.lang.String realm) |
private void |
saveSSHCredential(SVNProperties values,
SVNAuthentication auth,
java.lang.String realm) |
private boolean |
saveSSLCredential(SVNProperties values,
SVNAuthentication auth,
java.lang.String realm) |
private void |
saveUserNameCredential(SVNProperties values,
SVNAuthentication auth) |
private boolean |
shouldSaveCredentials(java.lang.String kind,
SVNProperties newValues,
SVNProperties oldValues) |
public static final java.lang.String WINDOWS_CRYPTO_API_PASSWORD_STORAGE
public static final java.lang.String MAC_OS_KEYCHAIN_PASSWORD_STORAGE
public static final java.lang.String GNOME_KEYRING_PASSWORD_STORAGE
public static final java.lang.String SIMPLE_PASSTYPE
public static final java.lang.String WIN_CRYPT_PASSTYPE
public static final java.lang.String MAC_OS_KEYCHAIN_PASSTYPE
public static final java.lang.String GNOME_KEYRING_PASSTYPE
private java.io.File myDirectory
private java.lang.String myUserName
private DefaultSVNPersistentAuthenticationProvider.IPasswordStorage[] myPasswordStorages
private ISVNAuthenticationStorageOptions myAuthOptions
private DefaultSVNOptions myDefaultOptions
private ISVNHostOptionsProvider myHostOptionsProvider
protected DefaultSVNPersistentAuthenticationProvider(java.io.File directory, java.lang.String userName, ISVNAuthenticationStorageOptions authOptions, DefaultSVNOptions defaultOptions, ISVNHostOptionsProvider hostOptionsProvider)
protected DefaultSVNPersistentAuthenticationProvider.IPasswordStorage[] createPasswordStorages(DefaultSVNOptions options)
private DefaultSVNPersistentAuthenticationProvider.IPasswordStorage getPasswordStorage(java.lang.String passType)
private SVNPasswordAuthentication readSSLPassphrase(java.lang.String kind, java.lang.String realm, boolean storageAllowed, SVNURL url)
private SVNPasswordAuthentication readSSLPassphrase(java.lang.String expectedCertificatePath, SVNWCProperties props) throws SVNException
SVNException
private char[] readPassword(java.lang.String realm, java.lang.String userName, DefaultSVNPersistentAuthenticationProvider.IPasswordStorage passwordStorage, SVNProperties authValues) throws SVNException
SVNException
private char[] readPassphrase(java.lang.String realm, DefaultSVNPersistentAuthenticationProvider.IPasswordStorage passwordStorage, SVNProperties authValues) throws SVNException
SVNException
public SVNAuthentication requestClientAuthentication(java.lang.String kind, SVNURL url, java.lang.String realm, SVNErrorMessage errorMessage, SVNAuthentication previousAuth, boolean authMayBeStored)
ISVNAuthenticationProvider
If this provider has got more than one credentials (say, a list of credentials),
to get the first one of them previousAuth
is set to
null.
requestClientAuthentication
in interface ISVNAuthenticationProvider
kind
- a credential kind (for example, like those defined in
ISVNAuthenticationManager
)url
- a repository location that is to be accessedrealm
- a repository authentication realm (host, port, realm string)errorMessage
- the recent authentication failure error messagepreviousAuth
- the credential that was previously retrieved (to tell if it's
not accepted)authMayBeStored
- if true then the returned credential
can be cached, otherwise it won't be cached anywayprotected java.lang.String preprocessRealm(java.lang.String realm)
public boolean isMSCapi(java.lang.String filepath)
public void saveAuthentication(SVNAuthentication auth, java.lang.String kind, java.lang.String realm) throws SVNException
saveAuthentication
in interface ISVNPersistentAuthenticationProvider
SVNException
protected java.lang.String getAuthFileName(java.lang.String realm)
public int acceptServerAuthentication(SVNURL url, java.lang.String r, java.lang.Object serverAuth, boolean resultMayBeStored)
ISVNAuthenticationProvider
This method is used by an SSL manager (see DefaultSVNSSLTrustManager
).
acceptServerAuthentication
in interface ISVNAuthenticationProvider
url
- a repository location that is accessedr
- a repository authentication realm (host, port, realm string)serverAuth
- a server certificate objectresultMayBeStored
- if true then the server certificate
can be cached, otherwise notISVNAuthenticationProvider.REJECTED
, ISVNAuthenticationProvider.ACCEPTED_TEMPORARY
, or ISVNAuthenticationProvider.ACCEPTED
)private boolean shouldSaveCredentials(java.lang.String kind, SVNProperties newValues, SVNProperties oldValues) throws SVNException
SVNException
private void saveUserNameCredential(SVNProperties values, SVNAuthentication auth)
private void savePasswordCredential(SVNProperties values, SVNAuthentication auth, java.lang.String realm) throws SVNException
SVNException
private void saveSSHCredential(SVNProperties values, SVNAuthentication auth, java.lang.String realm) throws SVNException
SVNException
private boolean saveSSLCredential(SVNProperties values, SVNAuthentication auth, java.lang.String realm) throws SVNException
SVNException
public byte[] loadFingerprints(java.lang.String realm)
loadFingerprints
in interface ISVNPersistentAuthenticationProvider
public void saveFingerprints(java.lang.String realm, byte[] fingerprints)
saveFingerprints
in interface ISVNPersistentAuthenticationProvider