Neos\Flow\Security\Aspect\LoggingAspect::logManagerAuthenticate PHP Method

logManagerAuthenticate() public method

Logs calls and results of the authenticate() method of the Authentication Manager
public logManagerAuthenticate ( Neos\Flow\Aop\JoinPointInterface $joinPoint ) : mixed
$joinPoint Neos\Flow\Aop\JoinPointInterface The current joinpoint
return mixed The result of the target method if it has not been intercepted
    public function logManagerAuthenticate(JoinPointInterface $joinPoint)
    {
        if ($joinPoint->hasException()) {
            $exception = $joinPoint->getException();
            if (!$exception instanceof NoTokensAuthenticatedException) {
                $this->securityLogger->log(sprintf('Authentication failed: "%s" #%d', $exception->getMessage(), $exception->getCode()), LOG_NOTICE);
            }
            throw $exception;
        } elseif ($this->alreadyLoggedAuthenticateCall === false) {
            /** @var AuthenticationManagerInterface $authenticationManager */
            $authenticationManager = $joinPoint->getProxy();
            if ($authenticationManager->getSecurityContext()->getAccount() !== null) {
                $this->securityLogger->log(sprintf('Successfully re-authenticated tokens for account "%s"', $authenticationManager->getSecurityContext()->getAccount()->getAccountIdentifier()), LOG_INFO);
            } else {
                $this->securityLogger->log('No account authenticated', LOG_INFO);
            }
            $this->alreadyLoggedAuthenticateCall = true;
        }
    }