IPWorks Auth 2020 C++ Builder Edition

Questions / Feedback?

AuthMode Property

The authentication method to be used the component when calling Authenticate .

Syntax

__property TipaSSHAuthAuthModes AuthMode = { read=FAuthMode, write=FSetAuthMode };
enum TipaSSHAuthAuthModes { amNone=0, amMultiFactor=1, amPassword=2, amPublicKey=3, amKeyboardInteractive=4, amGSSAPIWithMic=5, amCustom=6 };

Default Value

amPassword

Remarks

The SSH Authentication specification (RFC 4252) specifies multiple methods by which a user can be authenticated by an SSH server. When a call is made to Authenticate, the component will connect to the SSH server and establish the security layer. After the connection has been secured, the client will send an authentication request to the SSHHost containing the User. The server will respond containing a list of methods by which that user may be authenticated.

The component will attempt to authenticate the user by one of those methods based on the value of AuthMode and other property values supplied by the user. Currently, the component supports the following authentication methods:

amNone (0)No authentication will be performed. The current User value is ignored, and the connection will be logged in as anonymous.
amMultiFactor (1)This allows the component to attempt a multi-step authentication process. The component will send authentication data to the server based on the list of methods allowed for the current user and the authentication property values supplied. The component will continue to send authentication data until the server acknowledges authentication success. If the server rejects an authentication step, the component raises an exception.
amPassword (2)The component will use the values of User and Password to authenticate the user.
amPublicKey (3)The component will use the values of User and the SSHCert* properties to authenticate the user. the SSHCert* properties must have a private key available for this authentication method to succeed.
amKeyboardInteractive (4)At the time of authentication, the component will fire the SSHKeyboardInteractive event containing instructions on how to complete the authentication step. (NOTE: amKeyboardInteractive is not supported in SSHTunnel).
amGSSAPIWithMic (5)This allows the component to attempt Kerberos authentication using the GSSAPI-WITH-MIC scheme. The client will try Kerberos authentication using the value of User (single sign-on), or if Password is specified as well, it will try Kerberos authentication with alternate credentials. This is currently supported only in the .NET client.
amCustom (6)This allows the component caller to take over the authentication process completely. When amCustom is set, the component will fire the SSHCustomAuth event as necessary to complete the authentication process.

Example (User/Password Auth):

Control.SSHAuthMode = SshauthSSHAuthModes.amPassword
Control.SSHUser = "username"
Control.SSHPassword = "password"
Control.SSHLogon("server", 22)
Example (Public Key Auth):
Control.SSHAuthMode = SshauthSSHAuthModes.amPublicKey
Control.SSHUser = "username"
Control.SSHCertStoreType = SSHCertStoreTypes.cstPFXFile;
Control.SSHCertStore = "cert.pfx";
Control.SSHCertStorePassword = "certpassword";
Control.SSHCertSubject = "*";  
Control.SSHLogon("server", 22)

Data Type

Integer

Copyright (c) 2022 /n software inc. - All rights reserved.
IPWorks Auth 2020 C++ Builder Edition - Version 20.0 [Build 8155]