pub struct ServiceAccount {
pub name: String,
pub description: Option<String>,
pub enabled: bool,
pub created_at: SystemTime,
pub roles: Vec<String>,
pub metadata: HashMap<String, String>,
pub certificate_subject: Option<String>,
pub oidc_client_id: Option<String>,
}Expand description
A service account represents a non-human identity (like rivven-connect)
Fields§
§name: StringUnique identifier
description: Option<String>Human-readable description
enabled: boolWhether the account is enabled
created_at: SystemTimeWhen the account was created
roles: Vec<String>Roles assigned to this account
metadata: HashMap<String, String>Additional metadata
certificate_subject: Option<String>mTLS certificate subject (if using cert auth)
oidc_client_id: Option<String>OIDC client ID (if using OIDC client credentials)
Implementations§
Source§impl ServiceAccount
impl ServiceAccount
pub fn new(name: impl Into<String>) -> Self
pub fn with_description(self, desc: impl Into<String>) -> Self
pub fn with_roles(self, roles: Vec<String>) -> Self
pub fn with_certificate_subject(self, subject: impl Into<String>) -> Self
pub fn with_oidc_client_id(self, client_id: impl Into<String>) -> Self
Trait Implementations§
Source§impl Clone for ServiceAccount
impl Clone for ServiceAccount
Source§fn clone(&self) -> ServiceAccount
fn clone(&self) -> ServiceAccount
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 ServiceAccount
impl Debug for ServiceAccount
Source§impl<'de> Deserialize<'de> for ServiceAccount
impl<'de> Deserialize<'de> for ServiceAccount
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
Auto Trait Implementations§
impl Freeze for ServiceAccount
impl RefUnwindSafe for ServiceAccount
impl Send for ServiceAccount
impl Sync for ServiceAccount
impl Unpin for ServiceAccount
impl UnwindSafe for ServiceAccount
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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<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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more