pub enum SynchOpt {
List(CommonOpt),
Get(Named),
SetCredentialPortal {
account_id: String,
copt: CommonOpt,
url: Option<Url>,
},
Create {
account_id: String,
copt: CommonOpt,
description: Option<String>,
},
GenerateToken {
account_id: String,
label: String,
copt: CommonOpt,
},
DestroyToken {
account_id: String,
copt: CommonOpt,
},
SetYieldAttributes {
account_id: String,
copt: CommonOpt,
attrs: Vec<String>,
},
ForceRefresh {
account_id: String,
copt: CommonOpt,
},
Finalise {
account_id: String,
copt: CommonOpt,
},
Terminate {
account_id: String,
copt: CommonOpt,
},
}
Variants§
List(CommonOpt)
List all configured IDM sync accounts
Get(Named)
Display a selected IDM sync account
SetCredentialPortal
Set the url to the external credential portal. This will be displayed to synced users so that they can be redirected to update their credentials on this portal.
Create
Create a new IDM sync account
GenerateToken
Generate a bearer token for an IDM sync account
DestroyToken
Destroy (revoke) the bearer token for an IDM sync account
SetYieldAttributes
Set the list of attributes that have their authority yielded from the sync account and are allowed to be modified by kanidm and users. Any attributes not listed in in this command will have their authority returned to the sync account.
ForceRefresh
Reset the sync cookie of this connector, so that on the next operation of the sync tool a full refresh of the provider is requested. Kanidm attributes that have been granted authority will not be lost or deleted.
Finalise
Finalise and remove this sync account. This will transfer all synchronised entries into the authority of Kanidm. This signals the end of a migration from an external IDM into Kanidm. ⚠️ This action can NOT be undone. Once complete, it is most likely that attempting to recreate a sync account from the same IDM will fail due to conflicting entries that Kanidm now owns.
Terminate
Terminate and remove this sync account. This will DELETE all entries that were imported from the external IDM source. ⚠️ This action can NOT be undone, and will require you to recreate the sync account if you wish to re-import data. Recreating the sync account may fail until the recycle bin and and tombstones are purged.
Implementations§
Trait Implementations§
source§impl FromArgMatches for SynchOpt
impl FromArgMatches for SynchOpt
source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches,
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>
source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>
ArgMatches
to self
.source§fn update_from_arg_matches_mut<'b>(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut<'b>( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches
to self
.source§impl Subcommand for SynchOpt
impl Subcommand for SynchOpt
source§fn augment_subcommands<'b>(__clap_app: Command) -> Command
fn augment_subcommands<'b>(__clap_app: Command) -> Command
source§fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command
fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command
Command
] so it can instantiate self
via
[FromArgMatches::update_from_arg_matches_mut
] Read moresource§fn has_subcommand(__clap_name: &str) -> bool
fn has_subcommand(__clap_name: &str) -> bool
Self
can parse a specific subcommandAuto Trait Implementations§
impl Freeze for SynchOpt
impl RefUnwindSafe for SynchOpt
impl Send for SynchOpt
impl Sync for SynchOpt
impl Unpin for SynchOpt
impl UnwindSafe for SynchOpt
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> 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>
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>
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