pub struct SecondFactor { /* private fields */ }Expand description
Its key is sealed with the app’s keys; a recovery code is kept only as its digest once the factor is confirmed.
Implementations§
Source§impl SecondFactor
impl SecondFactor
pub const ACCOUNT: Column<SecondFactor, AccountId>
pub const SECRET: Column<SecondFactor, String>
pub const CONFIRMED_AT: Column<SecondFactor, Option<Instant>>
pub const LAST_STEP: Column<SecondFactor, i64>
pub const RECOVERY: Column<SecondFactor, String>
pub const PENDING_RECOVERY: Column<SecondFactor, Option<String>>
pub const FAILURES: Column<SecondFactor, i32>
pub const FAILING_SINCE: Column<SecondFactor, Option<Instant>>
Trait Implementations§
Source§impl Aggregate for SecondFactor
impl Aggregate for SecondFactor
const NAME: &'static str = "second_factor"
const MODULE: &'static str = "sofie_identity"
const FIELDS: &'static [Field]
Source§const UNIQUE: &'static [&'static str]
const UNIQUE: &'static [&'static str]
Fields held unique by the database, answered as their own field errors.
Source§const SENSITIVE: &'static [&'static str]
const SENSITIVE: &'static [&'static str]
#[sensitive] fields, which a list can neither filter nor sort by.const BEHAVIORS: &'static [&'static dyn Behavior]
const CHANGED: Option<&'static str>
const OWNER: Option<&'static str>
const PRUNED: Option<&'static str>
fn owner(&self) -> Option<Uuid>
fn meta(&self) -> &Meta
fn meta_mut(&mut self) -> &mut Meta
fn encode(&self, out: &mut Vec<SqlValue>)
fn decode(loaded: Meta, row: &mut dyn ColumnReader) -> Result<Self>
fn refuse_unlisted_moves(&self, loaded: &mut dyn ColumnReader) -> Result<()>
const ID: Column<Self, Id<Self>> = _
fn id(&self) -> Id<Self>
const CHILDREN: &'static [&'static ChildTable] = _
fn owned_by(owner: Uuid) -> Option<Condition<Self>>
fn children(&self) -> Vec<&dyn ChildRows>
fn children_mut(&mut self) -> Vec<&mut dyn ChildRows>
fn exposed_fields(&self) -> Option<Result<Map<String, Value>, Error>>
Source§impl Create for SecondFactor
impl Create for SecondFactor
Source§impl<SofieContext: Writes> Resolve<SofieContext> for SecondFactor
impl<SofieContext: Writes> Resolve<SofieContext> for SecondFactor
Source§impl Serialize for SecondFactor
impl Serialize for SecondFactor
Source§impl Update for SecondFactor
impl Update for SecondFactor
type Input = CreateSecondFactor
fn update(&mut self, _: CreateSecondFactor) -> Result<()>
impl Uses<Timestamps> for SecondFactor
Auto Trait Implementations§
impl Freeze for SecondFactor
impl RefUnwindSafe for SecondFactor
impl Send for SecondFactor
impl Sync for SecondFactor
impl Unpin for SecondFactor
impl UnsafeUnpin for SecondFactor
impl UnwindSafe for SecondFactor
Blanket Implementations§
Source§impl<O> AnyOutcome for Owhere
O: Outcome,
impl<O> AnyOutcome for Owhere
O: Outcome,
Source§impl<T> AreaPrincipal for Twhere
T: Aggregate,
impl<T> AreaPrincipal for Twhere
T: Aggregate,
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