pub trait PasswordEncoder: Send + Sync {
// Required methods
fn encode(&self, raw_password: &str) -> String;
fn matches(&self, raw_password: &str, encoded_password: &str) -> bool;
// Provided method
fn upgrade_encoding(&self, _encoded_password: &str) -> bool { ... }
}Expand description
Trait for encoding and verifying passwords.
§Spring Security Equivalent
PasswordEncoder interface
§Example
ⓘ
use actix_security_core::http::security::crypto::{PasswordEncoder, Argon2PasswordEncoder};
let encoder = Argon2PasswordEncoder::new();
let hash = encoder.encode("my_password");
assert!(encoder.matches("my_password", &hash));Required Methods§
Provided Methods§
Sourcefn upgrade_encoding(&self, _encoded_password: &str) -> bool
fn upgrade_encoding(&self, _encoded_password: &str) -> bool
Returns true if the encoded password should be upgraded for better security.
§Spring Equivalent
PasswordEncoder.upgradeEncoding(String encodedPassword)
Implementors§
impl PasswordEncoder for Argon2PasswordEncoder
Available on crate feature
argon2 only.impl PasswordEncoder for BCryptPasswordEncoder
Available on crate feature
bcrypt only.impl PasswordEncoder for DelegatingPasswordEncoder
Available on crate feature
argon2 only.