pub struct ToolPermissionConfig {
pub default_action: PermissionAction,
pub tool_permissions: HashMap<String, Vec<Role>>,
pub category_permissions: HashMap<String, Vec<Role>>,
pub admin_only_tools: HashSet<String>,
pub read_only_tools: HashSet<String>,
}
Expand description
Configuration for tool permissions
Fields§
§default_action: PermissionAction
Default permission for tools (allow or deny)
tool_permissions: HashMap<String, Vec<Role>>
Specific tool permissions
category_permissions: HashMap<String, Vec<Role>>
Tool category permissions
admin_only_tools: HashSet<String>
Tools that require admin access
read_only_tools: HashSet<String>
Tools that are read-only (allowed for monitor role)
Trait Implementations§
Source§impl Clone for ToolPermissionConfig
impl Clone for ToolPermissionConfig
Source§fn clone(&self) -> ToolPermissionConfig
fn clone(&self) -> ToolPermissionConfig
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 ToolPermissionConfig
impl Debug for ToolPermissionConfig
Source§impl Default for ToolPermissionConfig
impl Default for ToolPermissionConfig
Source§fn default() -> ToolPermissionConfig
fn default() -> ToolPermissionConfig
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ToolPermissionConfig
impl<'de> Deserialize<'de> for ToolPermissionConfig
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 ToolPermissionConfig
impl RefUnwindSafe for ToolPermissionConfig
impl Send for ToolPermissionConfig
impl Sync for ToolPermissionConfig
impl Unpin for ToolPermissionConfig
impl UnwindSafe for ToolPermissionConfig
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