pub struct LegacySystemAnalysis {Show 14 fields
pub system_type: LegacySystemType,
pub role_count: usize,
pub permission_count: usize,
pub user_assignment_count: usize,
pub roles: Vec<LegacyRole>,
pub permissions: Vec<LegacyPermission>,
pub user_assignments: Vec<LegacyUserAssignment>,
pub hierarchy_depth: usize,
pub duplicates_found: bool,
pub orphaned_permissions: Vec<String>,
pub circular_dependencies: Vec<Vec<String>>,
pub custom_attributes: HashSet<String>,
pub complexity_score: u8,
pub recommended_strategy: MigrationStrategy,
}Expand description
Analysis result of legacy authorization system
Fields§
§system_type: LegacySystemTypeType of legacy system detected
role_count: usizeTotal number of roles found
permission_count: usizeTotal number of permissions found
user_assignment_count: usizeTotal number of user assignments
roles: Vec<LegacyRole>Discovered roles
permissions: Vec<LegacyPermission>Discovered permissions
user_assignments: Vec<LegacyUserAssignment>User assignments
hierarchy_depth: usizeRole hierarchy complexity (depth levels)
duplicates_found: boolDuplicate roles/permissions detected
orphaned_permissions: Vec<String>Orphaned permissions (not assigned to any role)
circular_dependencies: Vec<Vec<String>>Circular dependencies in role hierarchy
custom_attributes: HashSet<String>Custom attributes that need special handling
complexity_score: u8Estimated migration complexity (1-10 scale)
recommended_strategy: MigrationStrategyRecommended migration strategy
Trait Implementations§
Source§impl Clone for LegacySystemAnalysis
impl Clone for LegacySystemAnalysis
Source§fn clone(&self) -> LegacySystemAnalysis
fn clone(&self) -> LegacySystemAnalysis
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 LegacySystemAnalysis
impl Debug for LegacySystemAnalysis
Source§impl<'de> Deserialize<'de> for LegacySystemAnalysis
impl<'de> Deserialize<'de> for LegacySystemAnalysis
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 LegacySystemAnalysis
impl RefUnwindSafe for LegacySystemAnalysis
impl Send for LegacySystemAnalysis
impl Sync for LegacySystemAnalysis
impl Unpin for LegacySystemAnalysis
impl UnwindSafe for LegacySystemAnalysis
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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>
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