pub struct CapabilityTokenRequest {
pub subject: String,
pub permissions: Vec<String>,
pub expires_at: Option<u64>,
pub claims: HashMap<String, String>,
pub format: CapabilityTokenFormat,
pub context: Option<String>,
}Expand description
Capability token creation request
Fields§
§subject: StringSubject to issue the token for
permissions: Vec<String>Permissions to grant
expires_at: Option<u64>Token expiration time (timestamp)
claims: HashMap<String, String>Additional claims to include
format: CapabilityTokenFormatToken format to use
context: Option<String>Context restrictions (optional)
Implementations§
Source§impl CapabilityTokenRequest
Helper functions for common capability token operations
impl CapabilityTokenRequest
Helper functions for common capability token operations
Sourcepub fn standard(subject: &str, permissions: &[String]) -> CapabilityTokenRequest
pub fn standard(subject: &str, permissions: &[String]) -> CapabilityTokenRequest
Create a standard token request with common settings
Sourcepub fn short_lived(
subject: &str,
permissions: &[String],
) -> CapabilityTokenRequest
pub fn short_lived( subject: &str, permissions: &[String], ) -> CapabilityTokenRequest
Create a short-lived token request (5 minutes)
Note: This method requires PhysicalTimeEffects to set expiration.
Use short_lived_with_time for production code.
Sourcepub fn short_lived_with_expiry(
subject: &str,
permissions: &[String],
expires_at: u64,
) -> CapabilityTokenRequest
pub fn short_lived_with_expiry( subject: &str, permissions: &[String], expires_at: u64, ) -> CapabilityTokenRequest
Create a short-lived token request with explicit expiration time
Sourcepub fn read_only(subject: &str, resource: &str) -> CapabilityTokenRequest
pub fn read_only(subject: &str, resource: &str) -> CapabilityTokenRequest
Create a read-only token request
Sourcepub fn with_claim(self, key: &str, value: &str) -> CapabilityTokenRequest
pub fn with_claim(self, key: &str, value: &str) -> CapabilityTokenRequest
Add a custom claim to the token request
Sourcepub fn with_expiry(self, expires_at: u64) -> CapabilityTokenRequest
pub fn with_expiry(self, expires_at: u64) -> CapabilityTokenRequest
Set the expiration time for the token
Sourcepub fn with_context(self, context: &str) -> CapabilityTokenRequest
pub fn with_context(self, context: &str) -> CapabilityTokenRequest
Set the context for the token
Trait Implementations§
Source§impl Clone for CapabilityTokenRequest
impl Clone for CapabilityTokenRequest
Source§fn clone(&self) -> CapabilityTokenRequest
fn clone(&self) -> CapabilityTokenRequest
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CapabilityTokenRequest
impl Debug for CapabilityTokenRequest
Source§impl<'de> Deserialize<'de> for CapabilityTokenRequest
impl<'de> Deserialize<'de> for CapabilityTokenRequest
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<CapabilityTokenRequest, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<CapabilityTokenRequest, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for CapabilityTokenRequest
impl Serialize for CapabilityTokenRequest
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations§
impl Freeze for CapabilityTokenRequest
impl RefUnwindSafe for CapabilityTokenRequest
impl Send for CapabilityTokenRequest
impl Sync for CapabilityTokenRequest
impl Unpin for CapabilityTokenRequest
impl UnsafeUnpin for CapabilityTokenRequest
impl UnwindSafe for CapabilityTokenRequest
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