pub struct CapabilityToken {
pub plugin_id: String,
pub session_id: String,
pub granted_caps: BTreeSet<String>,
pub issued_at: i64,
pub expires_at: i64,
pub signature: String,
}Expand description
A minted, signed capability token. The string form is pipe-delimited:
v1|<plugin_id>|<session_id>|<issued_at>|<expires_at>|<caps_hex>|<sig_hex>.
Fields§
§plugin_id: String§session_id: String§granted_caps: BTreeSet<String>Sorted set so the canonical ,-joined form matches Python’s
",".join(sorted(caps)).
issued_at: i64§expires_at: i64§signature: StringHex-encoded HMAC-SHA256.
Implementations§
Source§impl CapabilityToken
impl CapabilityToken
Sourcepub fn to_token_string(&self) -> String
pub fn to_token_string(&self) -> String
Compact pipe-delimited string form.
Sourcepub fn from_token_string(encoded: &str) -> Result<Self, TokenError>
pub fn from_token_string(encoded: &str) -> Result<Self, TokenError>
Parse the pipe-delimited string form.
pub fn is_expired(&self, now: i64) -> bool
Trait Implementations§
Source§impl Clone for CapabilityToken
impl Clone for CapabilityToken
Source§impl Debug for CapabilityToken
impl Debug for CapabilityToken
impl Eq for CapabilityToken
Source§impl PartialEq for CapabilityToken
impl PartialEq for CapabilityToken
impl StructuralPartialEq for CapabilityToken
Auto Trait Implementations§
impl Freeze for CapabilityToken
impl RefUnwindSafe for CapabilityToken
impl Send for CapabilityToken
impl Sync for CapabilityToken
impl Unpin for CapabilityToken
impl UnsafeUnpin for CapabilityToken
impl UnwindSafe for CapabilityToken
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,
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.