pub enum JwtAlgorithm {
Hs256,
Both,
Eddsa,
}Expand description
The JWT algorithm policy a cluster enforces for join tokens.
Phases of the HS256 → EdDSA migration:
Hs256: accept HS256-JWT and Ed25519-signed-envelope tokens. EdDSA-JWT is rejected (fresh tokens have nowhere to come from in this phase).Both: accept all three modern formats. Operators run their cluster here for a migration grace window so in-flight HS256 tokens remain valid while clients re-issue underEdDSA.Eddsa: accept EdDSA-JWT and Ed25519-signed-envelope. HS256-JWT is rejected with an actionable error. The symmetric{data_dir}/join_secretmay be wiped viaWipeJoinSecretat this point — it’s no longer load-bearing.
Variants§
Hs256
HS256-only (legacy default for clusters created before Wave 11).
Both
Both algorithms accepted (migration window).
Eddsa
EdDSA-only. The cluster has decommissioned its symmetric secret.
Implementations§
Trait Implementations§
Source§impl Clone for JwtAlgorithm
impl Clone for JwtAlgorithm
Source§fn clone(&self) -> JwtAlgorithm
fn clone(&self) -> JwtAlgorithm
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl ComposeSchema for JwtAlgorithm
impl ComposeSchema for JwtAlgorithm
impl Copy for JwtAlgorithm
Source§impl Debug for JwtAlgorithm
impl Debug for JwtAlgorithm
Source§impl Default for JwtAlgorithm
impl Default for JwtAlgorithm
Source§fn default() -> JwtAlgorithm
fn default() -> JwtAlgorithm
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for JwtAlgorithm
impl<'de> Deserialize<'de> for JwtAlgorithm
Source§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
Source§impl Display for JwtAlgorithm
impl Display for JwtAlgorithm
impl Eq for JwtAlgorithm
Source§impl PartialEq for JwtAlgorithm
impl PartialEq for JwtAlgorithm
Source§fn eq(&self, other: &JwtAlgorithm) -> bool
fn eq(&self, other: &JwtAlgorithm) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for JwtAlgorithm
impl Serialize for JwtAlgorithm
impl StructuralPartialEq for JwtAlgorithm
Auto Trait Implementations§
impl Freeze for JwtAlgorithm
impl RefUnwindSafe for JwtAlgorithm
impl Send for JwtAlgorithm
impl Sync for JwtAlgorithm
impl Unpin for JwtAlgorithm
impl UnsafeUnpin for JwtAlgorithm
impl UnwindSafe for JwtAlgorithm
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> FromBase64 for Twhere
T: for<'de> Deserialize<'de>,
impl<T> FromBase64 for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> PartialSchema for Twhere
T: ComposeSchema + ?Sized,
impl<T> PartialSchema for Twhere
T: ComposeSchema + ?Sized,
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<C> SignWithKey<String> for Cwhere
C: ToBase64,
impl<C> SignWithKey<String> for Cwhere
C: ToBase64,
fn sign_with_key(self, key: &impl SigningAlgorithm) -> Result<String, Error>
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.
Source§impl<T> ValidateIp for Twhere
T: ToString,
impl<T> ValidateIp for Twhere
T: ToString,
Source§fn validate_ipv4(&self) -> bool
fn validate_ipv4(&self) -> bool
Validates whether the given string is an IP V4
Source§fn validate_ipv6(&self) -> bool
fn validate_ipv6(&self) -> bool
Validates whether the given string is an IP V6
Source§fn validate_ip(&self) -> bool
fn validate_ip(&self) -> bool
Validates whether the given string is an IP