pub enum KeyRole {
Primary,
NextRotation,
DelegatedAgent,
}Expand description
The role a stored key serves within its identity.
Variants§
Primary
The identity’s current active signing key.
NextRotation
A pre-committed rotation key (not yet active).
DelegatedAgent
A key delegated to an autonomous agent.
Implementations§
Source§impl KeyRole
impl KeyRole
Sourcepub fn from_persisted(token: &str) -> Result<KeyRole, UnknownKeyRole>
pub fn from_persisted(token: &str) -> Result<KeyRole, UnknownKeyRole>
Parse a role token read back from a keychain/credential store. An unrecognized token is
refused (UnknownKeyRole) rather than defaulted, so a corrupt store entry cannot load a key
as the most-privileged Primary role. Every backend decodes a stored role here.
Args:
token: the role string read from the store (e.g."primary","delegated_agent").
Usage:
ⓘ
let role = KeyRole::from_persisted(stored_token)?;Trait Implementations§
impl Copy for KeyRole
Source§impl<'de> Deserialize<'de> for KeyRole
impl<'de> Deserialize<'de> for KeyRole
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
impl Eq for KeyRole
impl StructuralPartialEq for KeyRole
Auto Trait Implementations§
impl Freeze for KeyRole
impl RefUnwindSafe for KeyRole
impl Send for KeyRole
impl Sync for KeyRole
impl Unpin for KeyRole
impl UnsafeUnpin for KeyRole
impl UnwindSafe for KeyRole
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.