This is an old revision of the document!
SessionOptions Class
Defines information to allow an automatic connection and authentication of the session. Is used with Session.Open
method.
Advertisement
Syntax
Namespace: WinSCP
C#
public sealed class SessionOptions
VB.NET
Public NotInheritable Class SessionOptions
Constructors
Name | Description |
---|---|
SessionOptions() | Default constructor. |
Properties
Name | Description |
---|---|
FtpMode FtpMode | FTP mode. Possible values are FtpMode.Passive (default) and FtpMode.Active . |
FtpSecure FtpSecure | FTPS mode. Possible values are FtpSecure.None (default), FtpSecure.Implicit , FtpSecure.ExplicitTls and FtpSecure.ExplicitSsl . |
bool GiveUpSecurityAndAcceptAnySshHostKey | Give up security and accept any SSH host key. To be used in exceptional situations only, when security is not required. When set, log files will include warning about insecure connection. To maintain security, use SshHostKeyFingerprint . |
bool GiveUpSecurityAndAcceptAnyTlsHostCertificate | Give up security and accept any FTPS/WebDAVS server TLS/SSL certificate. To be used in exceptional situations only, when security is not required. When set, log files will include warning about insecure connection. To maintain security, use TlsHostCertificateFingerprint . |
string HostName | Name of the host to connect to. Mandatory property. |
string Password | Password for authentication. |
SecureString SecurePassword | Encrypted password for authentication. Use instead of Password to reduce a number of unencrypted copies of the password in memory. This feature is available only in the latest beta release. |
int PortNumber | Port number to connect to. Keep default 0 to use the default port for the protocol. |
Protocol Protocol | Protocol to use for the session. Possible values are Protocol.Sftp (default), Protocol.Scp , Protocol.Ftp and Protocol.Webdav (This feature is available only in the latest beta release.). |
string SshHostKeyFingerprint | Fingerprint of SSH server host key (or several alternative fingerprints separated by semicolon). It makes WinSCP automatically accept host key with the fingerprint. Mandatory for SFTP/SCP protocol.1 Learn how to obtain host key fingerprint. |
string SshPrivateKeyPath | Full path to private key file. |
string SshPrivateKeyPassphrase | Passphrase for encrypted private keys. This feature is available only in the latest beta release. |
string TlsHostCertificateFingerprint | Fingerprint of FTPS/WebDAVS server TLS/SSL certificate to be automatically accepted (useful for certificates signed by untrusted authority). |
TimeSpan Timeout | Server response timeout. Defaults to 15 seconds. |
int TimeoutInMilliseconds | Alternative to Timeout . Particularly useful for COM hosts that cannot use TimeSpan , such as Visual Basic. |
string UserName | Username for authentication. Mandatory property. |
bool WebdavSecure | Use WebDAVS (WebDAV over TLS/SSL), instead of WebDAV. This feature is available only in the latest beta release. |
string WebdavRoot | WebDAV root path. This feature is available only in the latest beta release. |
Advertisement
Methods
Name | Description |
---|---|
void AddRawSettings(string setting, string value) | Allows configuring any site settings using raw format as in an INI file. E.g. to enable SSH compression and agent forwarding use AddRawSettings("Compression", "1") and AddRawSettings("AgentFwd", "1") . |
Remarks
You need to fill in all properties required to connect and authenticate your session automatically.
You always need to fill in Protocol
, HostName
and UserName
2.
In most cases you need to fill in Password
. Exceptions are:
- You use different authentication method than a password authentication, such as public key authentication for SSH session;
- The server does not require password.
For SSH (SFTP/SCP) session you need to fill in the SshHostKeyFingerprint
to verify the expected server host key.
Example
See overall example for WinSCP .NET assembly or any other example.
- You can leave the property
null
, if you setGiveUpSecurityAndAcceptAnySshHostKey
; or if you setSession.DefaultConfiguration
tofalse
and make sure the host key is already accepted in the configuration, only (not recommended).Back - Except for very rare occasions that the server does not require username.Back