Struct ate::session::Session[][src]

pub struct Session where
    Self: Send + Sync
{ pub properties: Vec<SessionProperty>, pub log_format: MessageFormat, }

Sessions hold facts about the user that give them certains rights and abilities to view data within the chain-of-trust.

For instance - to see encrypted data for specific users they must insert their EncryptKey into this session before accessing the chain via a Dio.

Another example is the ability to write data. For certain records within the tree if they have been protected with write protection then you must insert your PrivateKey into the session before you attempt to insert or modify these records.

Sessions are never cached and only exist in memory for the duration that you use them for security reasons.

Fields

properties: Vec<SessionProperty>log_format: MessageFormat

Implementations

impl Session[src]

pub fn new(cfg: &ConfAte) -> Session[src]

pub fn add_read_key(&mut self, key: &EncryptKey)[src]

pub fn add_private_read_key(&mut self, key: &PrivateEncryptKey)[src]

pub fn add_write_key(&mut self, key: &PrivateSignKey)[src]

pub fn add_identity(&mut self, identity: String)[src]

Trait Implementations

impl Clone for Session where
    Self: Send + Sync
[src]

impl Debug for Session where
    Self: Send + Sync
[src]

impl<'de> Deserialize<'de> for Session where
    Session: Send + Sync
[src]

impl Display for Session[src]

impl Serialize for Session where
    Session: Send + Sync
[src]

Auto Trait Implementations

impl RefUnwindSafe for Session

impl Send for Session

impl Sync for Session

impl Unpin for Session

impl UnwindSafe for Session

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,