alibi_core/config/
identity.rs1use super::*;
2#[derive(Debug, Clone, Default)]
3pub struct UserConfig {
4 pub additional_fields: crate::field_policy::FieldConfigs,
5}
6
7#[derive(Clone, Default)]
9pub struct VerificationConfig {
10 pub disable_cleanup: bool,
13 pub store_in_database: bool,
16 pub store_identifier: crate::verification::VerificationIdentifierPolicy,
18 pub secondary_storage: Option<Arc<dyn crate::store::CacheAdapter>>,
21}
22
23impl std::fmt::Debug for VerificationConfig {
24 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
25 f.debug_struct("VerificationConfig")
26 .field("disable_cleanup", &self.disable_cleanup)
27 .field("store_in_database", &self.store_in_database)
28 .field("store_identifier", &self.store_identifier)
29 .field("secondary_storage", &self.secondary_storage.is_some())
30 .finish()
31 }
32}
33
34#[derive(Debug, Clone, Default)]
38#[expect(
39 clippy::struct_excessive_bools,
40 reason = "Independent configuration switches model distinct upstream behavior, rather than mutually exclusive states"
41)]
42pub struct PasswordConfig {
43 pub require_uppercase: bool,
45
46 pub require_lowercase: bool,
48
49 pub require_numbers: bool,
51
52 pub require_special: bool,
54}