Package org.tmatesoft.svn.core.auth

# Class SVNSSHAuthentication

java.lang.Object
org.tmatesoft.svn.core.auth.SVNAuthentication
org.tmatesoft.svn.core.auth.SVNSSHAuthentication

public class SVNSSHAuthentication extends SVNAuthentication
The SVNSSHAuthentication class represents a kind of credentials used to authenticate a user over an SSH tunnel.

To obtain an ssh user credential, specify the `SSH` kind to credentials getter method of ISVNAuthenticationManager: `getFirstAuthentication()`, `getNextAuthentication()`.

Since:
  1.2
Version:
  1.3
Author:
  TMate Software Ltd.
See Also:
  - `ISVNAuthenticationManager`

## Constructor Summary

Constructors
Constructor
Description
`SVNSSHAuthentication(String userName, char[] privateKey, String passphrase, int portNumber, boolean storageAllowed)`
Deprecated.
Use `method`
`SVNSSHAuthentication(String userName, char[] privateKey, String passphrase, int portNumber, boolean storageAllowed, SVNURL url, boolean isPartial)`
Deprecated.
Use `method`
`SVNSSHAuthentication(String userName, AgentProxy agentProxy, int portNumber, SVNURL url, boolean isPartial)`
Deprecated.
Use `method`
`SVNSSHAuthentication(String userName, File keyFile, String passphrase, int portNumber, boolean storageAllowed)`
Deprecated.
Use `method`
`SVNSSHAuthentication(String userName, File keyFile, String passphrase, int portNumber, boolean storageAllowed, SVNURL url, boolean isPartial)`
Deprecated.
Use `method`
`SVNSSHAuthentication(String userName, String password, int portNumber, boolean storageAllowed)`
Deprecated.
Use `newInstance(String, char[], int, boolean, SVNURL, boolean)` method
`SVNSSHAuthentication(String userName, String password, int portNumber, boolean storageAllowed, SVNURL url, boolean isPartial)`
Deprecated.
Use `newInstance(String, char[], int, boolean, SVNURL, boolean)` method

## Method Summary

Modifier and Type
Method
Description
`SVNAuthentication`
`copy()`
Creates a deep copy of this credentials object.
`void`
`dismissSensitiveData()`
Disposes sensitive data (e.g. password) stored in this object.
`AgentProxy`
`getAgentProxy()`
Tells whether this authentication object has a SSH agent connection
`String`
`getPassphrase()`
Deprecated.
Use `getPassphraseValue()` method
`char[]`
`getPassphraseValue()`
Returns the password to the ssh private key.
`String`
`getPassword()`
Deprecated.
Use `getPasswordValue()` method
`char[]`
`getPasswordValue()`
Returns password.
`int`
`getPortNumber()`
Returns the number of the port across which an ssh tunnel is established.
`char[]`
`getPrivateKey()`
Returns ssh private key.
`File`
`getPrivateKeyFile()`
Returns the File representation referring to the file with the user's ssh private key.
`boolean`
`hasPrivateKey()`
Tells whether this authentication object contains a user's private key.
`static SVNSSHAuthentication`
`newInstance(String userName, char[] keyValue, char[] passphrase, int portNumber, boolean storageAllowed, SVNURL url, boolean isPartial)`
Creates a user credential object for authenticating over an ssh tunnel.
`static SVNSSHAuthentication`
`newInstance(String userName, char[] password, int portNumber, boolean storageAllowed, SVNURL url, boolean isPartial)`
Creates a user credential object for authenticating over an ssh tunnel.
`static SVNSSHAuthentication`
`newInstance(String userName, AgentProxy agentProxy, int portNumber, SVNURL url, boolean isPartial)`
Creates a user credential object for authenticating over an ssh tunnel.
`static SVNSSHAuthentication`
`newInstance(String userName, File keyFile, char[] passphrase, int portNumber, boolean storageAllowed, SVNURL url, boolean isPartial)`
Creates a user credential object for authenticating over an ssh tunnel.

### Methods inherited from class org.tmatesoft.svn.core.auth.SVNAuthentication

`copyOf, getKind, getURL, getUserName, isPartial, isStorageAllowed`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### SVNSSHAuthentication

public SVNSSHAuthentication(String userName, String password, int portNumber, boolean storageAllowed)
Deprecated.
Use `newInstance(String, char[], int, boolean, SVNURL, boolean)` method

### SVNSSHAuthentication

public SVNSSHAuthentication(String userName, String password, int portNumber, boolean storageAllowed, SVNURL url, boolean isPartial)
Deprecated.
Use `newInstance(String, char[], int, boolean, SVNURL, boolean)` method

Since:
  1.3.1

### SVNSSHAuthentication

public SVNSSHAuthentication(String userName, File keyFile, String passphrase, int portNumber, boolean storageAllowed)
Deprecated.
Use `method`

### SVNSSHAuthentication

public SVNSSHAuthentication(String userName, File keyFile, String passphrase, int portNumber, boolean storageAllowed, SVNURL url, boolean isPartial)
Deprecated.
Use `method`

Since:
  1.3.1

### SVNSSHAuthentication

public SVNSSHAuthentication(String userName, char[] privateKey, String passphrase, int portNumber, boolean storageAllowed)
Deprecated.
Use `method`

### SVNSSHAuthentication

public SVNSSHAuthentication(String userName, char[] privateKey, String passphrase, int portNumber, boolean storageAllowed, SVNURL url, boolean isPartial)
Deprecated.
Use `method`

Since:
  1.3.1

### SVNSSHAuthentication

public SVNSSHAuthentication(String userName, AgentProxy agentProxy, int portNumber, SVNURL url, boolean isPartial)
Deprecated.
Use `method`

## Method Details

### newInstance

public static SVNSSHAuthentication newInstance(String userName, char[] password, int portNumber, boolean storageAllowed, SVNURL url, boolean isPartial)
Creates a user credential object for authenticating over an ssh tunnel.

Parameters:
  `userName` - the name of a user to authenticate
  `password` - the user's password
  `portNumber` - the number of a port to establish an ssh tunnel over
  `storageAllowed` - if true then this credential is allowed to be stored in the global auth cache, otherwise not
  `url` - url these credentials are applied to
Since:
  1.8.9

### newInstance

public static SVNSSHAuthentication newInstance(String userName, File keyFile, char[] passphrase, int portNumber, boolean storageAllowed, SVNURL url, boolean isPartial)
Creates a user credential object for authenticating over an ssh tunnel.

Parameters:
  `userName` - the name of a user to authenticate
  `keyFile` - the user's ssh private key file
  `passphrase` - a password to the ssh private key
  `portNumber` - the number of a port to establish an ssh tunnel over
  `storageAllowed` - if true then this credential is allowed to be stored in the global auth cache, otherwise not
  `url` - url these credentials are applied to
Since:
  1.8.9

### newInstance

public static SVNSSHAuthentication newInstance(String userName, char[] keyValue, char[] passphrase, int portNumber, boolean storageAllowed, SVNURL url, boolean isPartial)
Creates a user credential object for authenticating over an ssh tunnel.

Parameters:
  `userName` - the name of a user to authenticate
  `privateKey` - the user's ssh private key
  `passphrase` - a password to the ssh private key
  `portNumber` - the number of a port to establish an ssh tunnel over
  `storageAllowed` - if true then this credential is allowed to be stored in the global auth cache, otherwise not
  `url` - url these credentials are applied to
Since:
  1.8.9

### newInstance

public static SVNSSHAuthentication newInstance(String userName, AgentProxy agentProxy, int portNumber, SVNURL url, boolean isPartial)
Creates a user credential object for authenticating over an ssh tunnel.

Parameters:
  `userName` - the name of a user to authenticate
  `agentProxy` - SSH agent proxy
  `portNumber` - the number of a port to establish an ssh tunnel over
  `url` - url these credentials are applied to
Since:
  1.8.9

### getPassword

public String getPassword()
Deprecated.
Use `getPasswordValue()` method
Returns password. This is used when an ssh private key is not used.

Returns:
  the user's password

### getPasswordValue

public char[] getPasswordValue()
Returns password. This is used when an ssh private key is not used.

Returns:
  password
Since:
  1.8.9

### getPassphrase

public String getPassphrase()
Deprecated.
Use `getPassphraseValue()` method
Returns the password to the ssh private key.

Returns:
  the password to the private key
See Also:
  - `getPrivateKeyFile()`

### getPassphraseValue

public char[] getPassphraseValue()
Returns the password to the ssh private key.

Returns:
  the password to the private key
Since:
  1.8.9
See Also:
  - `getPrivateKeyFile()`

### getPrivateKeyFile

public File getPrivateKeyFile()
Returns the File representation referring to the file with the user's ssh private key. If the private key is encrypted with a passphrase, it should have been provided to an appropriate constructor.

Returns:
  the user's private key file

### getPrivateKey

public char[] getPrivateKey()
Returns ssh private key. If the private key is encrypted with a passphrase, it should have been provided to an appropriate constructor.

Returns:
  the user's private key file

### getPortNumber

public int getPortNumber()
Returns the number of the port across which an ssh tunnel is established.

Returns:
  the port number to establish an ssh tunnel over

### hasPrivateKey

public boolean hasPrivateKey()
Tells whether this authentication object contains a user's private key.

Returns:
  true if either `getPrivateKey()` or `getPrivateKeyFile()` returns non-null
Since:
  1.2.0

### getAgentProxy

public AgentProxy getAgentProxy()
Tells whether this authentication object has a SSH agent connection

### dismissSensitiveData

public void dismissSensitiveData()
Description copied from class: `SVNAuthentication`
Disposes sensitive data (e.g. password) stored in this object.

Overrides:
  `dismissSensitiveData` in class `SVNAuthentication`

### copy

public SVNAuthentication copy()
Description copied from class: `SVNAuthentication`
Creates a deep copy of this credentials object. Sensitive data (e.g. password) is copied too.

Overrides:
  `copy` in class `SVNAuthentication`
Returns:
  copy of this object.