pub struct Security {
pub allow_trifecta: bool,
pub tls_ca: Option<String>,
pub aauth: Option<AAuth>,
pub cgroup: Cgroup,
pub exec: Exec,
pub workflows: WorkflowSecurity,
pub egress: Egress,
pub policies: Vec<Policy>,
}Fields§
§allow_trifecta: bool§tls_ca: Option<String>§aauth: Option<AAuth>§cgroup: Cgroup§exec: Exec§workflows: WorkflowSecurity§egress: Egressclosed ⇒ an outbound MCP dial whose URL matches no services:
catalog entry is refused: at boot for configured servers, and at dial
time for everything else, so a URL assembled at runtime is caught too.
Default open.
policies: Vec<Policy>Ordered verdicts on the tool CALL — by name, tag, caller, principal or arguments. First match wins; no match is allow.
This is the only place an argument can be judged: grants are name
patterns, so “delete anything outside /tmp” has no expression in them,
and agent.approval only decides whether to honour a gate the MODEL
asked for. It is also where the trifecta tags finally do work at
runtime rather than only folding at startup.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Security
impl<'de> Deserialize<'de> for Security
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 Security
Auto Trait Implementations§
impl Freeze for Security
impl RefUnwindSafe for Security
impl Send for Security
impl Sync for Security
impl Unpin for Security
impl UnsafeUnpin for Security
impl UnwindSafe for Security
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