pub struct AccessRuleRequestModel {
pub name: String,
pub description: Option<String>,
pub enabled: Option<bool>,
pub conditions: Option<Value>,
pub single_active_lease: Option<bool>,
pub default_lease_duration_seconds: Option<i32>,
pub max_lease_duration_seconds: Option<i32>,
pub allows_extensions: Option<bool>,
pub max_extension_duration_seconds: Option<i32>,
pub collections: Vec<Uuid>,
}Fields§
§name: StringThe rule’s display name, shown wherever rules are listed and managed. Required; up to 256 characters.
description: Option<String>Optional free-text describing the rule’s intent. Has no effect on evaluation; surfaced to admins only.
enabled: Option<bool>When false, the rule is inactive and does not gate access for the collections it governs. Defaults to true so a request that omits the field creates an active rule.
conditions: Option<Value>The condition tree that decides how access is granted under this rule — for example requiring human approval, or restricting to certain times of day or source IPs. Sent as a JSON object and stored verbatim; an empty or null value means the rule imposes no conditions.
single_active_lease: Option<bool>When true, the rule enforces a per-cipher singleton (at most one active lease per cipher across all users).
default_lease_duration_seconds: Option<i32>Default lease duration in seconds, used to pre-fill a request opened under this rule. Null means the backend default applies.
max_lease_duration_seconds: Option<i32>Hard ceiling on the duration of any single lease granted under this rule, in seconds. Null means no per-rule cap.
allows_extensions: Option<bool>When true, a member holding an active lease under this rule may extend it once (always auto-approved), by up to Bit.Services.Pam.Api.Models.Request.AccessRuleRequestModel.MaxExtensionDurationSeconds.
max_extension_duration_seconds: Option<i32>The longest a single extension may run, in seconds. Required to be positive when Bit.Services.Pam.Api.Models.Request.AccessRuleRequestModel.AllowsExtensions is true.
collections: Vec<Uuid>The complete set of collections this rule governs. The rule’s associations are replaced to match exactly this set; an empty array clears all associations.
Implementations§
Trait Implementations§
Source§impl Clone for AccessRuleRequestModel
impl Clone for AccessRuleRequestModel
Source§fn clone(&self) -> AccessRuleRequestModel
fn clone(&self) -> AccessRuleRequestModel
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AccessRuleRequestModel
impl Debug for AccessRuleRequestModel
Source§impl Default for AccessRuleRequestModel
impl Default for AccessRuleRequestModel
Source§fn default() -> AccessRuleRequestModel
fn default() -> AccessRuleRequestModel
Source§impl<'de> Deserialize<'de> for AccessRuleRequestModel
impl<'de> Deserialize<'de> for AccessRuleRequestModel
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>,
Source§impl PartialEq for AccessRuleRequestModel
impl PartialEq for AccessRuleRequestModel
Source§impl Serialize for AccessRuleRequestModel
impl Serialize for AccessRuleRequestModel
impl StructuralPartialEq for AccessRuleRequestModel
Auto Trait Implementations§
impl Freeze for AccessRuleRequestModel
impl RefUnwindSafe for AccessRuleRequestModel
impl Send for AccessRuleRequestModel
impl Sync for AccessRuleRequestModel
impl Unpin for AccessRuleRequestModel
impl UnsafeUnpin for AccessRuleRequestModel
impl UnwindSafe for AccessRuleRequestModel
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> CompatExt for T
impl<T> CompatExt for T
§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
§unsafe fn consume_handle(handle: Handle) -> Arc<T>
unsafe fn consume_handle(handle: Handle) -> Arc<T>
Arc<> Read more