BeforeRequestTokenProcessedEvent

New in version 12.1

The event \TYPO3\CMS\Core\Authentication\Event\BeforeRequestTokenProcessedEvent allows to intercept or adjust a request token during active user authentication process.

Example

The event can be used to generate the request token individually. This can be the case when you are not using a login callback and have not the possibility to submit a request token:

EXT:my_extension/Classes/Authentication/EventListener/MyEventListener.php
<?php

declare(strict_types=1);

namespace MyVendor\MyExtension\Authentication\EventListener;

use TYPO3\CMS\Core\Attribute\AsEventListener;
use TYPO3\CMS\Core\Authentication\Event\BeforeRequestTokenProcessedEvent;
use TYPO3\CMS\Core\Security\RequestToken;

#[AsEventListener(
    identifier: 'my-extension/process-request-token-listener',
)]
final readonly class MyEventListener
{
    public function __invoke(BeforeRequestTokenProcessedEvent $event): void
    {
        $user = $event->getUser();
        $requestToken = $event->getRequestToken();
        // fine, there is a valid request token
        if ($requestToken instanceof RequestToken) {
            return;
        }

        // Validate individual requirements/checks
        // ...
        $event->setRequestToken(
            RequestToken::create('core/user-auth/' . strtolower($user->loginType)),
        );
    }
}
Copied!

New in version 13.0

API

class BeforeRequestTokenProcessedEvent
Fully qualified name
\TYPO3\CMS\Core\Authentication\Event\BeforeRequestTokenProcessedEvent

Event fired before request-token is processed.

getUser ( )
Returns
\TYPO3\CMS\Core\Authentication\AbstractUserAuthentication
getRequest ( )
Returns
\Psr\Http\Message\ServerRequestInterface
getRequestToken ( )
Returns
\TYPO3\CMS\Core\Security\RequestToken|false|?null
setRequestToken ( ?TYPO3\CMS\Core\Security\RequestToken|false|null $requestToken)
param $requestToken

the requestToken