pub enum AccountRequest {
    GetAuthState {
        responder: AccountGetAuthStateResponder,
    },
    RegisterAuthListener {
        payload: AuthTargetRegisterAuthListenerRequest,
        responder: AccountRegisterAuthListenerResponder,
    },
    GetLifetime {
        responder: AccountGetLifetimeResponder,
    },
    GetPersonaIds {
        responder: AccountGetPersonaIdsResponder,
    },
    GetDefaultPersona {
        persona: ServerEnd<PersonaMarker>,
        responder: AccountGetDefaultPersonaResponder,
    },
    GetPersona {
        id: u64,
        persona: ServerEnd<PersonaMarker>,
        responder: AccountGetPersonaResponder,
    },
    GetAuthMechanismEnrollments {
        responder: AccountGetAuthMechanismEnrollmentsResponder,
    },
    CreateAuthMechanismEnrollment {
        interaction: ServerEnd<InteractionMarker>,
        responder: AccountCreateAuthMechanismEnrollmentResponder,
    },
    RemoveAuthMechanismEnrollment {
        enrollment_id: u64,
        responder: AccountRemoveAuthMechanismEnrollmentResponder,
    },
    StorageLock {
        responder: AccountStorageLockResponder,
    },
    InteractionLock {
        responder: AccountInteractionLockResponder,
    },
    GetDataDirectory {
        data_directory: ServerEnd<DirectoryMarker>,
        responder: AccountGetDataDirectoryResponder,
    },
}
Expand description

A protocol that exposes information about the personae for a system account and provides methods to manipulate these. It also exposes a writable data directory.

An Account provides access to sensitive long term identifiers and is only intended only for use by a small number of trusted system components.

Variants§

§

GetAuthState

Returns the current AuthState of the target.

Returns: auth_state The target’s current authentication state.

§

RegisterAuthListener

Connects a channel that will receive changes in the authentication state of the target.

listener [required] The client end of an AuthListener channel initial_state If true, the listener will receive the initial auth state in addition to any changes. granularity An AuthChangeGranularity expressing the magnitude of change in authentication state that will lead to AuthStateChange events.

§

GetLifetime

Returns the account’s lifetime.

§

GetPersonaIds

Returns a vector of all the personae defined for the account. NOTE: Currently all accounts have exactly one persona.

§

GetDefaultPersona

Fields

§persona: ServerEnd<PersonaMarker>

Connects a channel to read properties of and access tokens for the default persona for the account.

persona The server end of a Persona channel

Returns: id The identifier for the default persona

§

GetPersona

Fields

§id: u64
§persona: ServerEnd<PersonaMarker>

Connects a channel to read properties of and access tokens for one of the personae for the account.

id The persona’s identifier as returned by GetPersonaIds() persona The server end of a Persona channel

§

GetAuthMechanismEnrollments

Returns all authentication mechanism enrollments.

§

CreateAuthMechanismEnrollment

Fields

§interaction: ServerEnd<InteractionMarker>

Create a new enrollment of the provided authentication mechanism, and add it to the account.

interaction An Interaction channel enabling the user to enroll a new authentication mechanism or complete authentication challenges using an existing mechanism if these are necessary.

Returns: The AuthMechanismEnrollmentId of the created enrollment.

§

RemoveAuthMechanismEnrollment

Remove an authentication mechanism enrollment for the account.

enrollment_id The id of the enrollment to remove.

§

StorageLock

Locks all access to an account and its storage. After a successful call, all Account and Persona channels for this account will be terminated.

§

InteractionLock

Locks interaction with an account. After a successful call, the account AuthStateSummary will be set to INTERACTION_LOCKED.

Fails with FailedPrecondition if authentication is not enabled for the account.

§

GetDataDirectory

Fields

§data_directory: ServerEnd<DirectoryMarker>

Connects a channel to access a data directory of the account. The directory is writable, and is initially empty for a newly created account. The directory is persisted according to the lifetime of the account and is never modified by the account system.

NOTE: This method should only be called by the root session component instance. Multiple component instance clients are not yet supported.

data_directory The server end of a fuchsia.io.Directory channel

Implementations§

Trait Implementations§

source§

impl Debug for AccountRequest

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize = mem::align_of::<T>()

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more