Enum mongodb::options::AuthMechanism [−][src]
#[non_exhaustive] pub enum AuthMechanism { MongoDbCr, ScramSha1, ScramSha256, MongoDbX509, Gssapi, Plain, MongoDbAws, }
Expand description
The authentication mechanisms supported by MongoDB.
Note: not all of these mechanisms are currently supported by the driver.
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
MongoDB Challenge Response nonce and MD5 based authentication system. It is currently deprecated and will never be supported by this driver.
The SCRAM-SHA-1 mechanism as defined in RFC 5802.
See the MongoDB documentation for more information.
The SCRAM-SHA-256 mechanism which extends RFC 5802 and is formally defined in RFC 7677.
See the MongoDB documentation for more information.
The MONGODB-X509 mechanism based on the usage of X.509 certificates to validate a client where the distinguished subject name of the client certificate acts as the username.
See the MongoDB documentation for more information.
Kerberos authentication mechanism as defined in RFC 4752.
See the MongoDB documentation for more information.
Note: This mechanism is not currently supported by this driver but will be in the future.
The SASL PLAIN mechanism, as defined in RFC 4616, is used in MongoDB to perform LDAP authentication and cannot be used for any other type of authenticaiton. Since the credentials are stored outside of MongoDB, the “$external” database must be used for authentication.
See the MongoDB documentation for more information on LDAP authentication.
MONGODB-AWS authenticates using AWS IAM credentials (an access key ID and a secret access key), temporary AWS IAM credentials obtained from an AWS Security Token Service (STS) Assume Role request, or temporary AWS IAM credentials assigned to an EC2 instance or ECS task.
Note: Only server versions 4.4+ support AWS authentication. Additionally, the driver only supports AWS authentication with the tokio runtime.
Implementations
Determines if the provided credentials have the required information to perform authentication.
Trait Implementations
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations
impl RefUnwindSafe for AuthMechanism
impl Send for AuthMechanism
impl Sync for AuthMechanism
impl Unpin for AuthMechanism
impl UnwindSafe for AuthMechanism
Blanket Implementations
Mutably borrows from an owned value. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
type Output = T
type Output = T
Should always be Self
pub fn vzip(self) -> V