MfaProviderManifest implements MfaProviderManifestInterface
Adapter for MFA providers
should only be used by the TYPO3 Core
Table of Contents
Interfaces
- MfaProviderManifestInterface
- Annotated information about the MFA provider – used in various views
Methods
- __construct() : mixed
- activate() : bool
- Activate / register this provider for the user
- canProcess() : bool
- Check if the current request can be handled by this provider (e.g.
- deactivate() : bool
- Deactivate this provider for the user
- getDescription() : string
- A short description about the provider
- getIconIdentifier() : string
- The icon identifier for this provider
- getIdentifier() : string
- Unique provider identifier
- getSetupInstructions() : string
- Instructions to be displayed in the setup view
- getTitle() : string
- The title of the provider
- handleRequest() : ResponseInterface
- Generate the provider specific response for the given view type.
- isActive() : bool
- Check if provider is active for the user by e.g. checking the user record for some provider specific active state.
- isDefaultProviderAllowed() : bool
- Whether the provider is allowed to be set as default
- isLocked() : bool
- Check if provider is temporarily locked for the user, because of e.g. to much false authentication attempts. This differs from the "isActive" state on purpose, so please DO NOT use the "isActive" state for such check internally. This will allow attackers to easily circumvent MFA!
- unlock() : bool
- Unlock this provider for the user
- update() : bool
- Handle changes of the provider by the user
- verify() : bool
- Verifies the MFA request
Methods
__construct()
    public
                    __construct(string $identifier, string $title, string $description, string $setupInstructions, string $iconIdentifier, bool $isDefaultProviderAllowed, string $serviceName, ContainerInterface $container) : mixed
    Parameters
- $identifier : string
- $title : string
- $description : string
- $setupInstructions : string
- $iconIdentifier : string
- $isDefaultProviderAllowed : bool
- $serviceName : string
- $container : ContainerInterface
activate()
Activate / register this provider for the user
    public
                    activate(ServerRequestInterface $request, MfaProviderPropertyManager $propertyManager) : bool
    Parameters
- $request : ServerRequestInterface
- $propertyManager : MfaProviderPropertyManager
Return values
bool —TRUE in case operation was successful, FALSE otherwise
canProcess()
Check if the current request can be handled by this provider (e.g.
    public
                    canProcess(ServerRequestInterface $request) : bool
    necessary query arguments are set).
Parameters
- $request : ServerRequestInterface
Return values
booldeactivate()
Deactivate this provider for the user
    public
                    deactivate(ServerRequestInterface $request, MfaProviderPropertyManager $propertyManager) : bool
    Parameters
- $request : ServerRequestInterface
- $propertyManager : MfaProviderPropertyManager
Return values
bool —TRUE in case operation was successful, FALSE otherwise
getDescription()
A short description about the provider
    public
                    getDescription() : string
    Return values
stringgetIconIdentifier()
The icon identifier for this provider
    public
                    getIconIdentifier() : string
    Return values
stringgetIdentifier()
Unique provider identifier
    public
                    getIdentifier() : string
    Return values
stringgetSetupInstructions()
Instructions to be displayed in the setup view
    public
                    getSetupInstructions() : string
    Return values
stringgetTitle()
The title of the provider
    public
                    getTitle() : string
    Return values
stringhandleRequest()
Generate the provider specific response for the given view type.
    public
                    handleRequest(ServerRequestInterface $request, MfaProviderPropertyManager $propertyManager, string $type) : ResponseInterface
    Note: Currently the calling controller only evaluates the response body and directly injects it into the corresponding view. It's however planned to also take further information like headers into account.
Parameters
- $request : ServerRequestInterface
- $propertyManager : MfaProviderPropertyManager
- $type : string
Return values
ResponseInterfaceisActive()
Check if provider is active for the user by e.g. checking the user record for some provider specific active state.
    public
                    isActive(MfaProviderPropertyManager $propertyManager) : bool
    Parameters
- $propertyManager : MfaProviderPropertyManager
Return values
boolisDefaultProviderAllowed()
Whether the provider is allowed to be set as default
    public
                    isDefaultProviderAllowed() : bool
    Return values
boolisLocked()
Check if provider is temporarily locked for the user, because of e.g. to much false authentication attempts. This differs from the "isActive" state on purpose, so please DO NOT use the "isActive" state for such check internally. This will allow attackers to easily circumvent MFA!
    public
                    isLocked(MfaProviderPropertyManager $propertyManager) : bool
    Parameters
- $propertyManager : MfaProviderPropertyManager
Return values
boolunlock()
Unlock this provider for the user
    public
                    unlock(ServerRequestInterface $request, MfaProviderPropertyManager $propertyManager) : bool
    Parameters
- $request : ServerRequestInterface
- $propertyManager : MfaProviderPropertyManager
Return values
bool —TRUE in case operation was successful, FALSE otherwise
update()
Handle changes of the provider by the user
    public
                    update(ServerRequestInterface $request, MfaProviderPropertyManager $propertyManager) : bool
    Parameters
- $request : ServerRequestInterface
- $propertyManager : MfaProviderPropertyManager
Return values
bool —TRUE in case operation was successful, FALSE otherwise
verify()
Verifies the MFA request
    public
                    verify(ServerRequestInterface $request, MfaProviderPropertyManager $propertyManager) : bool
    Parameters
- $request : ServerRequestInterface
- $propertyManager : MfaProviderPropertyManager