pub struct Principal {
pub matcher: PrincipalMatch,
pub role: Role,
pub grants: Vec<String>,
pub quotas: Option<Quotas>,
pub labels: BTreeMap<String, String>,
}Fields§
§matcher: PrincipalMatch§role: Role§grants: Vec<String>§quotas: Option<Quotas>§labels: BTreeMap<String, String>Operator-declared attributes carried with everything this principal
causes — into the run, the MCP _meta and the audit line.
A CLOSED domain on purpose: these become durable governor scope keys and audit fields, and minting them from values arriving off the box is the same unbounded-cardinality hazard the metrics layer already bans for labels, relocated into the manifest.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Principal
impl<'de> Deserialize<'de> for Principal
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 StructuralPartialEq for Principal
Auto Trait Implementations§
impl Freeze for Principal
impl RefUnwindSafe for Principal
impl Send for Principal
impl Sync for Principal
impl Unpin for Principal
impl UnsafeUnpin for Principal
impl UnwindSafe for Principal
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