Enum AuthMethod

Source
#[non_exhaustive]
pub enum AuthMethod { Password(String), PrivateKey { key_data: String, key_pass: Option<String>, }, PrivateKeyFile { key_file_path: PathBuf, key_pass: Option<String>, }, PublicKeyFile { key_file_path: PathBuf, }, Agent, KeyboardInteractive(AuthKeyboardInteractive), }
Expand description

An authentification token.

Used when creating a Client for authentification. Supports password, private key, public key, SSH agent, and keyboard interactive authentication.

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

Password(String)

§

PrivateKey

Fields

§key_data: String

entire contents of private key file

§key_pass: Option<String>
§

PrivateKeyFile

Fields

§key_file_path: PathBuf
§key_pass: Option<String>
§

PublicKeyFile

Fields

§key_file_path: PathBuf
§

Agent

§

KeyboardInteractive(AuthKeyboardInteractive)

Implementations§

Source§

impl AuthMethod

Source

pub fn with_password(password: &str) -> Self

Convenience method to create a AuthMethod from a string literal.

Source

pub fn with_key(key: &str, passphrase: Option<&str>) -> Self

Source

pub fn with_key_file<T: AsRef<Path>>( key_file_path: T, passphrase: Option<&str>, ) -> Self

Source

pub fn with_public_key_file<T: AsRef<Path>>(key_file_path: T) -> Self

Source

pub fn with_agent() -> Self

Creates a new SSH agent authentication method.

This will attempt to authenticate using all identities available in the SSH agent. The SSH agent must be running and the SSH_AUTH_SOCK environment variable must be set.

§Example
use async_ssh2_tokio::client::AuthMethod;

let auth = AuthMethod::with_agent();
§Platform Support

This method is only available on Unix-like systems (Linux, macOS, etc.). It is not available on Windows.

Source

pub const fn with_keyboard_interactive(auth: AuthKeyboardInteractive) -> Self

Trait Implementations§

Source§

impl Clone for AuthMethod

Source§

fn clone(&self) -> AuthMethod

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for AuthMethod

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl From<AuthKeyboardInteractive> for AuthMethod

Source§

fn from(value: AuthKeyboardInteractive) -> Self

Converts to this type from the input type.
Source§

impl Hash for AuthMethod

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for AuthMethod

Source§

fn eq(&self, other: &AuthMethod) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for AuthMethod

Source§

impl StructuralPartialEq for AuthMethod

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V