ComponentPro UltimateSftp

      AuthenticateAsync(SecureShellGssApiCredentials, Object) Method

      See AlsoMembers Options: Show AllLanguage Filter: AllSend comments on this topic to ComponentPro
      Asynchronously authenticates to the server using GSSAPI.

      Syntax

      public Task AuthenticateAsync(
         SecureShellGssApiCredentials credentials, 
         object userState = null
      )

      Parameters

      credentials
      The GSSAPI authentication settings.
      userState
      A user-provided object that identifies this particular asynchronous operation.

      Return Value

      An object that references the asynchronous operation.

      Examples

      Shows how to asynchronously connect to an SFTP server using GSSAPI authentication method and download a remote file (Event-based approach).

      using System;
      using System.ComponentModel;
      using ComponentPro.Net;
      
      ...
      
      public void DoAsyncConnect()
      {
          // Create a new class instance. 
          Sftp client = new Sftp();
      
          client.HostKeyVerifying += client_HostKeyVerifying;
      
          client.ConnectCompleted += client_ConnectCompleted;
          client.AuthenticateCompleted += client_AuthenticateCompleted;
          client.DisconnectCompleted += client_DisconnectCompleted;
      
          // Connect to the SFTP server asynchronously. 
          client.ConnectAsync("myserver", 22);
      
          // Your code here 
          // ...
      }
      
      void client_ConnectCompleted(object sender, AsyncCompletedEventArgs e)
      {
          Sftp client = (Sftp)sender;
          if (e.Error != null)
              Console.WriteLine("Error: " + e.Error.ToString());
          else 
          {
              // Authenticate the user asynchronously. 
              client.AuthenticateAsync(new SecureShellGssApiCredentials("userName", "password", "domain"));
          }
      }
      
      void client_AuthenticateCompleted(object sender, AsyncCompletedEventArgs e)
      {
          Sftp client = (Sftp)sender;
          if (e.Error != null)
              Console.WriteLine("Error: " + e.Error.ToString());
          else 
          {
              // Do something here... 
              client.DownloadFile("/my remote file.dat", "my local file");
          }
      
          // ... 
       
          // Disconnect asynchronously. 
          client.DisconnectAsync();
      }
      
      void client_DisconnectCompleted(object sender, AsyncCompletedEventArgs e)
      {
          // Sftp client = (Sftp)sender; 
          if (e.Error != null)
              Console.WriteLine("Error: " + e.Error.ToString());
      }
      
      void client_HostKeyVerifying(object sender, HostKeyVerifyingEventArgs e)
      {
          // Show host key. 
          Console.WriteLine("HostKey: " + e.HostKey);
          // Check the key here 
          // ...
      }

      Framework

      .NET Compact Framework.NET Compact Framework

      Supported version: 2.0, 3.5, and 3.9
      Assembly: ComponentPro.Sftp.CF (in ComponentPro.Sftp.CF.dll)

      .NET Framework.NET Framework

      Supported version: 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6.x and later
      Assembly: ComponentPro.Sftp (in ComponentPro.Sftp.dll)

      See Also