MfaController extends AbstractMfaController implements LoggerAwareInterface uses LoggerAwareTrait
Controller to provide a multi-factor authentication endpoint
This class is a specific Backend controller implementation and is not considered part of the Public TYPO3 API.
Table of Contents
Interfaces
- LoggerAwareInterface
Properties
- $allowedActions : array<string|int, mixed>
- $allowedProviders : array<string|int, mixed>
- $authenticationStyleInformation : AuthenticationStyleInformation
- $mfaProviderRegistry : MfaProviderRegistry
- $mfaRequired : bool
- $mfaTsConfig : array<string|int, mixed>
- $moduleTemplate : ModuleTemplate|null
- $moduleTemplateFactory : ModuleTemplateFactory
- $pageRenderer : PageRenderer
- $uriBuilder : UriBuilder
Methods
- __construct() : mixed
- authAction() : ResponseInterface
- Setup the authentication view for the provider by using provider specific content
- cancelAction() : ResponseInterface
- Allow the user to cancel the multi-factor authentication by calling logoff on the user object, to destroy the session and other already gathered information and finally initiate a redirect back to the login.
- handleRequest() : ResponseInterface
- Main entry point, checking prerequisite, initializing and setting up the view and finally dispatching to the requested action.
- verifyAction() : ResponseInterface
- Handle verification request, receiving from the auth view by forwarding the request to the appropriate provider.
- addCustomAuthenticationFormStyles() : void
- getAlternativeProviders() : array<string|int, ProviderInterface>
- Fetch alternative (activated and allowed) providers for the user to chose from
- getBackendUser() : BackendUserAuthentication
- getLanguageService() : LanguageService
- getMfaProviderFromRequest() : MfaProviderManifestInterface|null
- getRecommendedProvider() : MfaProviderManifestInterface|null
- Get the recommended provider
- initializeMfaConfiguration() : void
- Initialize MFA configuration based on TSconfig and global configuration
- isActionAllowed() : bool
- isProviderAllowed() : bool
- isValidIdentifier() : bool
- log() : void
- Log debug information for MFA events
Properties
$allowedActions
protected
array<string|int, mixed>
$allowedActions
= []
$allowedProviders
protected
array<string|int, mixed>
$allowedProviders
$authenticationStyleInformation
protected
AuthenticationStyleInformation
$authenticationStyleInformation
$mfaProviderRegistry
protected
MfaProviderRegistry
$mfaProviderRegistry
$mfaRequired
protected
bool
$mfaRequired
$mfaTsConfig
protected
array<string|int, mixed>
$mfaTsConfig
$moduleTemplate
protected
ModuleTemplate|null
$moduleTemplate
$moduleTemplateFactory
protected
ModuleTemplateFactory
$moduleTemplateFactory
$pageRenderer
protected
PageRenderer
$pageRenderer
$uriBuilder
protected
UriBuilder
$uriBuilder
Methods
__construct()
public
__construct(UriBuilder $uriBuilder, MfaProviderRegistry $mfaProviderRegistry, ModuleTemplateFactory $moduleTemplateFactory, AuthenticationStyleInformation $authenticationStyleInformation, PageRenderer $pageRenderer) : mixed
Parameters
- $uriBuilder : UriBuilder
- $mfaProviderRegistry : MfaProviderRegistry
- $moduleTemplateFactory : ModuleTemplateFactory
- $authenticationStyleInformation : AuthenticationStyleInformation
- $pageRenderer : PageRenderer
authAction()
Setup the authentication view for the provider by using provider specific content
public
authAction(ServerRequestInterface $request, MfaProviderManifestInterface $mfaProvider) : ResponseInterface
Parameters
- $request : ServerRequestInterface
- $mfaProvider : MfaProviderManifestInterface
Return values
ResponseInterfacecancelAction()
Allow the user to cancel the multi-factor authentication by calling logoff on the user object, to destroy the session and other already gathered information and finally initiate a redirect back to the login.
public
cancelAction(ServerRequestInterface $request) : ResponseInterface
Parameters
- $request : ServerRequestInterface
Return values
ResponseInterfacehandleRequest()
Main entry point, checking prerequisite, initializing and setting up the view and finally dispatching to the requested action.
public
handleRequest(ServerRequestInterface $request) : ResponseInterface
Parameters
- $request : ServerRequestInterface
Return values
ResponseInterfaceverifyAction()
Handle verification request, receiving from the auth view by forwarding the request to the appropriate provider.
public
verifyAction(ServerRequestInterface $request, MfaProviderManifestInterface $mfaProvider) : ResponseInterface
Parameters
- $request : ServerRequestInterface
- $mfaProvider : MfaProviderManifestInterface
Return values
ResponseInterfaceaddCustomAuthenticationFormStyles()
protected
addCustomAuthenticationFormStyles() : void
getAlternativeProviders()
Fetch alternative (activated and allowed) providers for the user to chose from
protected
getAlternativeProviders(MfaProviderManifestInterface $mfaProvider) : array<string|int, ProviderInterface>
Parameters
- $mfaProvider : MfaProviderManifestInterface
Return values
array<string|int, ProviderInterface>getBackendUser()
protected
getBackendUser() : BackendUserAuthentication
Return values
BackendUserAuthenticationgetLanguageService()
protected
getLanguageService() : LanguageService
Return values
LanguageServicegetMfaProviderFromRequest()
protected
getMfaProviderFromRequest(ServerRequestInterface $request) : MfaProviderManifestInterface|null
Parameters
- $request : ServerRequestInterface
Return values
MfaProviderManifestInterface|nullgetRecommendedProvider()
Get the recommended provider
protected
getRecommendedProvider() : MfaProviderManifestInterface|null
Return values
MfaProviderManifestInterface|nullinitializeMfaConfiguration()
Initialize MFA configuration based on TSconfig and global configuration
protected
initializeMfaConfiguration() : void
isActionAllowed()
protected
isActionAllowed(string $action) : bool
Parameters
- $action : string
Return values
boolisProviderAllowed()
protected
isProviderAllowed(string $identifier) : bool
Parameters
- $identifier : string
Return values
boolisValidIdentifier()
protected
isValidIdentifier(string $identifier) : bool
Parameters
- $identifier : string
Return values
boollog()
Log debug information for MFA events
protected
log(string $message[, array<string|int, mixed> $additionalData = [] ][, MfaProviderManifestInterface|null $mfaProvider = null ]) : void
Parameters
- $message : string
- $additionalData : array<string|int, mixed> = []
- $mfaProvider : MfaProviderManifestInterface|null = null