pub struct JwtConfig {
pub secret: String,
pub issuer: String,
pub audience: String,
pub expiration_secs: u64,
pub refresh_expiration_secs: u64,
pub algorithm: JwtAlgorithm,
pub key_config: Option<JwtKeyConfig>,
pub include_jti: bool,
}Expand description
JWT configuration
Fields§
§secret: StringSecret or key material
issuer: StringToken issuer
audience: StringToken audience
expiration_secs: u64Access token expiration in seconds
refresh_expiration_secs: u64Refresh token expiration in seconds
algorithm: JwtAlgorithmAlgorithm to use
key_config: Option<JwtKeyConfig>Key configuration (for asymmetric algorithms)
include_jti: boolInclude JWT ID (jti) claim
Implementations§
Source§impl JwtConfig
impl JwtConfig
Sourcepub fn new(
secret: impl Into<String>,
issuer: impl Into<String>,
audience: impl Into<String>,
expiration_secs: u64,
) -> Self
pub fn new( secret: impl Into<String>, issuer: impl Into<String>, audience: impl Into<String>, expiration_secs: u64, ) -> Self
Create a new JWT configuration with symmetric secret
Sourcepub fn development() -> Self
pub fn development() -> Self
Default configuration for development
Sourcepub fn with_rsa(
private_key: impl Into<String>,
public_key: impl Into<String>,
issuer: impl Into<String>,
audience: impl Into<String>,
expiration_secs: u64,
) -> Self
pub fn with_rsa( private_key: impl Into<String>, public_key: impl Into<String>, issuer: impl Into<String>, audience: impl Into<String>, expiration_secs: u64, ) -> Self
Create configuration with RS256
Sourcepub fn verification_only_rsa(
public_key: impl Into<String>,
issuer: impl Into<String>,
audience: impl Into<String>,
) -> Self
pub fn verification_only_rsa( public_key: impl Into<String>, issuer: impl Into<String>, audience: impl Into<String>, ) -> Self
Create configuration for verification only (public key only)
Sourcepub fn with_algorithm(self, algorithm: JwtAlgorithm) -> Self
pub fn with_algorithm(self, algorithm: JwtAlgorithm) -> Self
Set algorithm
Sourcepub fn with_refresh_expiration(self, secs: u64) -> Self
pub fn with_refresh_expiration(self, secs: u64) -> Self
Set refresh token expiration
Trait Implementations§
Auto Trait Implementations§
impl Freeze for JwtConfig
impl RefUnwindSafe for JwtConfig
impl Send for JwtConfig
impl Sync for JwtConfig
impl Unpin for JwtConfig
impl UnwindSafe for JwtConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more