pub(crate) struct RotationConfig {Show 17 fields
id: RotationConfigId,
organization_id: OrganizationId,
cipher_id: CipherId,
target_system_id: TargetSystemId,
target_system_name: String,
target_system_method: TargetSystemMethod,
sealed_data: Option<String>,
wrapped_key: Option<String>,
schedule_cron: Option<String>,
rotate_on_access_end: bool,
enabled: bool,
last_rotation_at: Option<DateTime<Utc>>,
next_rotation_at: Option<DateTime<Utc>>,
has_active_job: bool,
awaiting_manual_rotation: bool,
creation_date: DateTime<Utc>,
revision_date: DateTime<Utc>,
}Expand description
A rotation config as the server returns it, with its security-relevant fields still sealed.
Fields§
§id: RotationConfigId§organization_id: OrganizationId§cipher_id: CipherId§target_system_id: TargetSystemId§target_system_name: String§target_system_method: TargetSystemMethod§sealed_data: Option<String>§wrapped_key: Option<String>§schedule_cron: Option<String>§rotate_on_access_end: bool§enabled: bool§last_rotation_at: Option<DateTime<Utc>>§next_rotation_at: Option<DateTime<Utc>>§has_active_job: bool§awaiting_manual_rotation: bool§creation_date: DateTime<Utc>§revision_date: DateTime<Utc>Implementations§
Source§impl RotationConfig
impl RotationConfig
Sourcefn from_response(
organization_id: OrganizationId,
response: PamRotationConfigResponseModel,
) -> Result<Self, RotationError>
fn from_response( organization_id: OrganizationId, response: PamRotationConfigResponseModel, ) -> Result<Self, RotationError>
organization_id must be the queried id, not response.organization_id, or a hostile
server could pass off another organization’s validly-sealed blob.
Sourcefn unseal(
&self,
key: SymmetricKeySlotId,
ctx: &mut KeyStoreContext<'_, KeySlotIds>,
) -> Option<RotationConfigSealedFields>
fn unseal( &self, key: SymmetricKeySlotId, ctx: &mut KeyStoreContext<'_, KeySlotIds>, ) -> Option<RotationConfigSealedFields>
Unseals the blob and checks it against this row’s target_system_id and cipher_id. Any
problem degrades to None rather than failing, so one bad blob can’t fail a list.
fn try_unseal( &self, key: SymmetricKeySlotId, ctx: &mut KeyStoreContext<'_, KeySlotIds>, ) -> Result<RotationConfigSealedFields, &'static str>
Trait Implementations§
Source§impl Clone for RotationConfig
impl Clone for RotationConfig
Source§fn clone(&self) -> RotationConfig
fn clone(&self) -> RotationConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 RotationConfig
impl Debug for RotationConfig
Source§impl Decryptable<KeySlotIds, SymmetricKeySlotId, RotationConfigView> for RotationConfig
impl Decryptable<KeySlotIds, SymmetricKeySlotId, RotationConfigView> for RotationConfig
Source§fn decrypt(
&self,
ctx: &mut KeyStoreContext<'_, KeySlotIds>,
key: SymmetricKeySlotId,
) -> Result<RotationConfigView, CryptoError>
fn decrypt( &self, ctx: &mut KeyStoreContext<'_, KeySlotIds>, key: SymmetricKeySlotId, ) -> Result<RotationConfigView, CryptoError>
Never fails: a blob that can’t be verified leaves RotationConfigView::sealed None.
Source§impl IdentifyKey<SymmetricKeySlotId> for RotationConfig
impl IdentifyKey<SymmetricKeySlotId> for RotationConfig
fn key_identifier(&self) -> SymmetricKeySlotId
Source§impl PartialEq for RotationConfig
impl PartialEq for RotationConfig
impl StructuralPartialEq for RotationConfig
Auto Trait Implementations§
impl Freeze for RotationConfig
impl RefUnwindSafe for RotationConfig
impl Send for RotationConfig
impl Sync for RotationConfig
impl Unpin for RotationConfig
impl UnsafeUnpin for RotationConfig
impl UnwindSafe for RotationConfig
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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
Create a new handle for an Arc value Read more
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
Clone a handle Read more
§unsafe fn consume_handle(handle: Handle) -> Arc<T> ⓘ
unsafe fn consume_handle(handle: Handle) -> Arc<T> ⓘ
Consume a handle, getting back the initial
Arc<> Read more§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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