Error 401 Unauthorized

GET http://api.escalnet.escalconsulting.com/api/contacts/all/email/15592

Forwarded to ErrorController (b07a77)

Exceptions

X-Auth-Token header is required

Exceptions 2

Symfony\Component\HttpKernel\Exception\ HttpException

Show exception properties
Symfony\Component\HttpKernel\Exception\HttpException {#958
  -statusCode: 401
  -headers: []
}
  1.     private function throwUnauthorizedException(AuthenticationException $authException): never
  2.     {
  3.         $this->logger?->notice(\sprintf('No Authentication entry point configured, returning a %s HTTP response. Configure "entry_point" on the firewall "%s" if you want to modify the response.'Response::HTTP_UNAUTHORIZED$this->firewallName));
  4.         throw new HttpException(Response::HTTP_UNAUTHORIZED$authException->getMessage(), $authException, [], $authException->getCode());
  5.     }
  6. }
in vendor/symfony/security-http/Firewall/ExceptionListener.php -> throwUnauthorizedException (line 179)
  1.     }
  2.     private function startAuthentication(Request $requestAuthenticationException $authException): Response
  3.     {
  4.         if (null === $this->authenticationEntryPoint) {
  5.             $this->throwUnauthorizedException($authException);
  6.         }
  7.         $this->logger?->debug('Calling Authentication entry point.', ['entry_point' => $this->authenticationEntryPoint]);
  8.         if (!$this->stateless) {
  1.     private function handleAuthenticationException(ExceptionEvent $eventAuthenticationException $exception): void
  2.     {
  3.         $this->logger?->info('An AuthenticationException was thrown; redirecting to authentication entry point.', ['exception' => $exception]);
  4.         try {
  5.             $event->setResponse($this->startAuthentication($event->getRequest(), $exception));
  6.             $event->allowCustomResponseCode();
  7.         } catch (\Exception $e) {
  8.             $event->setThrowable($e);
  9.         }
  10.     }
in vendor/symfony/security-http/Firewall/ExceptionListener.php -> handleAuthenticationException (line 87)
  1.     public function onKernelException(ExceptionEvent $event): void
  2.     {
  3.         $exception $event->getThrowable();
  4.         do {
  5.             if ($exception instanceof AuthenticationException) {
  6.                 $this->handleAuthenticationException($event$exception);
  7.                 return;
  8.             }
  9.             if ($exception instanceof AccessDeniedException) {
  1.         $this->priority ??= $dispatcher->getListenerPriority($eventName$this->listener);
  2.         $e $this->stopwatch->start($this->name'event_listener');
  3.         try {
  4.             ($this->optimizedListener ?? $this->listener)($event$eventName$dispatcher);
  5.         } finally {
  6.             if ($e->isStarted()) {
  7.                 $e->stop();
  8.             }
  9.         }
  1.         foreach ($listeners as $listener) {
  2.             if ($stoppable && $event->isPropagationStopped()) {
  3.                 break;
  4.             }
  5.             $listener($event$eventName$this);
  6.         }
  7.     }
  8.     /**
  9.      * Sorts the internal list of listeners for the given event by priority.
  1.         } else {
  2.             $listeners $this->getListeners($eventName);
  3.         }
  4.         if ($listeners) {
  5.             $this->callListeners($listeners$eventName$event);
  6.         }
  7.         return $event;
  8.     }
  1.         try {
  2.             $this->beforeDispatch($eventName$event);
  3.             try {
  4.                 $e $this->stopwatch->start($eventName'section');
  5.                 try {
  6.                     $this->dispatcher->dispatch($event$eventName);
  7.                 } finally {
  8.                     if ($e->isStarted()) {
  9.                         $e->stop();
  10.                     }
  11.                 }
  1.      * Handles a throwable by trying to convert it to a Response.
  2.      */
  3.     private function handleThrowable(\Throwable $eRequest $requestint $type): Response
  4.     {
  5.         $event = new ExceptionEvent($this$request$type$eisKernelTerminating$this->terminating);
  6.         $this->dispatcher->dispatch($eventKernelEvents::EXCEPTION);
  7.         // a listener might have replaced the exception
  8.         $e $event->getThrowable();
  9.         if (!$event->hasResponse()) {
in vendor/symfony/http-kernel/HttpKernel.php -> handleThrowable (line 91)
  1.                 $this->finishRequest($request$type);
  2.                 throw $e;
  3.             }
  4.             return $response $this->handleThrowable($e$request$type);
  5.         } finally {
  6.             $this->requestStack->pop();
  7.             if ($response instanceof StreamedResponse && $callback $response->getCallback()) {
  8.                 $requestStack $this->requestStack;
  1.         if (!$this->handlingHttpCache) {
  2.             $this->resetServices true;
  3.         }
  4.         try {
  5.             return $this->getHttpKernel()->handle($request$type$catch);
  6.         } finally {
  7.             --$this->requestStackSize;
  8.         }
  9.     }
Kernel->handle(object(Request)) in public/index.php (line 39)
  1. }
  2. $kernel = new Kernel($env$debug);
  3. $request Request::createFromGlobals();
  4. $response $kernel->handle($request);
  5. $response->send();
  6. $kernel->terminate($request$response);

Symfony\Component\Security\Core\Exception\ BadCredentialsException

X-Auth-Token header is required

  1.     public function authenticate(Request $request): Passport
  2.     {
  3.         $authTokenHeader $request->headers->get('X-Auth-Token');
  4.         if (!$authTokenHeader) {
  5.             throw new BadCredentialsException('X-Auth-Token header is required');
  6.         }
  7.         return new SelfValidatingPassport(
  8.             new UserBadge($authTokenHeader, function (string $credentials): UserInterface {
  9.                 $authToken $this->userProvider->getAuthToken($credentials);
  1.     public function authenticate(Request $request): Passport
  2.     {
  3.         $startTime microtime(true);
  4.         try {
  5.             $this->passport $this->authenticator->authenticate($request);
  6.         } finally {
  7.             $this->duration microtime(true) - $startTime;
  8.         }
  9.         return $this->passport;
  1.         $passport null;
  2.         $previousToken $this->tokenStorage->getToken();
  3.         try {
  4.             // get the passport from the Authenticator
  5.             $passport $authenticator->authenticate($request);
  6.             // check the passport (e.g. password checking)
  7.             $event = new CheckPassportEvent($authenticator$passport);
  8.             $this->eventDispatcher->dispatch($event);
  1.                 $this->logger?->debug('Skipping the "{authenticator}" authenticator as it did not support the request.', ['authenticator' => ($authenticator instanceof TraceableAuthenticator $authenticator->getAuthenticator() : $authenticator)::class]);
  2.                 continue;
  3.             }
  4.             $response $this->executeAuthenticator($authenticator$request);
  5.             if (null !== $response) {
  6.                 $this->logger?->debug('The "{authenticator}" authenticator set the response. Any later authenticator will not be called', ['authenticator' => ($authenticator instanceof TraceableAuthenticator $authenticator->getAuthenticator() : $authenticator)::class]);
  7.                 return $response;
  8.             }
  1.         if (!$authenticators) {
  2.             return null;
  3.         }
  4.         return $this->executeAuthenticators($authenticators$request);
  5.     }
  6.     /**
  7.      * @param AuthenticatorInterface[] $authenticators
  8.      */
  1.     }
  2.     public function authenticate(RequestEvent $event): void
  3.     {
  4.         $request $event->getRequest();
  5.         $response $this->authenticatorManager->authenticateRequest($request);
  6.         if (null === $response) {
  7.             return;
  8.         }
  9.         $event->setResponse($response);
  1.         return $supports;
  2.     }
  3.     public function authenticate(RequestEvent $event): void
  4.     {
  5.         $this->authenticationManagerListener->authenticate($event);
  6.     }
  7.     public function getAuthenticatorManagerListener(): AuthenticatorManagerListener
  8.     {
  9.         return $this->authenticationManagerListener;
  1.     public function authenticate(RequestEvent $event): void
  2.     {
  3.         $startTime microtime(true);
  4.         try {
  5.             $this->listener->authenticate($event);
  6.         } catch (LazyResponseException $e) {
  7.             $this->response $e->getResponse();
  8.             throw $e;
  9.         } finally {
  1.         foreach ($requestListeners as $listener) {
  2.             if (!$listener instanceof FirewallListenerInterface) {
  3.                 $listener($event);
  4.             } elseif (false !== $listener->supports($event->getRequest())) {
  5.                 $listener->authenticate($event);
  6.             }
  7.             if ($event->hasResponse()) {
  8.                 break;
  9.             }
in vendor/symfony/security-http/Firewall.php -> callListeners (line 93)
  1.             if (null !== $logoutListener) {
  2.                 yield $logoutListener;
  3.             }
  4.         };
  5.         $this->callListeners($event$authenticationListeners());
  6.     }
  7.     /**
  8.      * @return void
  9.      */
  1.         $this->priority ??= $dispatcher->getListenerPriority($eventName$this->listener);
  2.         $e $this->stopwatch->start($this->name'event_listener');
  3.         try {
  4.             ($this->optimizedListener ?? $this->listener)($event$eventName$dispatcher);
  5.         } finally {
  6.             if ($e->isStarted()) {
  7.                 $e->stop();
  8.             }
  9.         }
  1.         foreach ($listeners as $listener) {
  2.             if ($stoppable && $event->isPropagationStopped()) {
  3.                 break;
  4.             }
  5.             $listener($event$eventName$this);
  6.         }
  7.     }
  8.     /**
  9.      * Sorts the internal list of listeners for the given event by priority.
  1.         } else {
  2.             $listeners $this->getListeners($eventName);
  3.         }
  4.         if ($listeners) {
  5.             $this->callListeners($listeners$eventName$event);
  6.         }
  7.         return $event;
  8.     }
  1.         try {
  2.             $this->beforeDispatch($eventName$event);
  3.             try {
  4.                 $e $this->stopwatch->start($eventName'section');
  5.                 try {
  6.                     $this->dispatcher->dispatch($event$eventName);
  7.                 } finally {
  8.                     if ($e->isStarted()) {
  9.                         $e->stop();
  10.                     }
  11.                 }
  1.      */
  2.     private function handleRaw(Request $requestint $type self::MAIN_REQUEST): Response
  3.     {
  4.         // request
  5.         $event = new RequestEvent($this$request$type);
  6.         $this->dispatcher->dispatch($eventKernelEvents::REQUEST);
  7.         if ($event->hasResponse()) {
  8.             return $this->filterResponse($event->getResponse(), $request$type);
  9.         }
  1.         $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  2.         $this->requestStack->push($request);
  3.         $response null;
  4.         try {
  5.             return $response $this->handleRaw($request$type);
  6.         } catch (\Throwable $e) {
  7.             if ($e instanceof \Error && !$this->handleAllThrowables) {
  8.                 throw $e;
  9.             }
  1.         if (!$this->handlingHttpCache) {
  2.             $this->resetServices true;
  3.         }
  4.         try {
  5.             return $this->getHttpKernel()->handle($request$type$catch);
  6.         } finally {
  7.             --$this->requestStackSize;
  8.         }
  9.     }
Kernel->handle(object(Request)) in public/index.php (line 39)
  1. }
  2. $kernel = new Kernel($env$debug);
  3. $request Request::createFromGlobals();
  4. $response $kernel->handle($request);
  5. $response->send();
  6. $kernel->terminate($request$response);

Logs

Level Channel Message
INFO 16:59:06 php User Deprecated: Since api-platform/symfony 4.1: The "api_platform.validator.query_parameter_validator" service is deprecated use "\ApiPlatform\Metadata\Parameter::$constraints" instead.
{
    "exception": {}
}
INFO 16:59:06 php User Deprecated: Since api-platform/core 3.4: The class "ApiPlatform\ParameterValidator\ParameterValidator" is deprecated, use "\ApiPlatform\Metadata\Parameter::$constraints" instead.
{
    "exception": {}
}
INFO 16:59:06 php User Deprecated: Since api-platform/core 3.4: The class "ApiPlatform\ParameterValidator\Validator\ArrayItems" is deprecated, use "\ApiPlatform\Metadata\Parameter::$constraints" instead.
{
    "exception": {}
}
INFO 16:59:06 php User Deprecated: Since api-platform/core 3.4: The class "ApiPlatform\ParameterValidator\Validator\Bounds" is deprecated, use "\ApiPlatform\Metadata\Parameter::$constraints" instead.
{
    "exception": {}
}
INFO 16:59:06 php User Deprecated: Since api-platform/core 3.4: The class "ApiPlatform\ParameterValidator\Validator\Enum" is deprecated, use "\ApiPlatform\Metadata\Parameter::$constraints" instead.
{
    "exception": {}
}
INFO 16:59:06 php User Deprecated: Since api-platform/core 3.4: The class "ApiPlatform\ParameterValidator\Validator\Length" is deprecated, use "\ApiPlatform\Metadata\Parameter::$constraints" instead.
{
    "exception": {}
}
INFO 16:59:06 php User Deprecated: Since api-platform/core 3.4: The class "ApiPlatform\ParameterValidator\Validator\MultipleOf" is deprecated, use "\ApiPlatform\Metadata\Parameter::$constraints" instead.
{
    "exception": {}
}
INFO 16:59:06 php User Deprecated: Since api-platform/core 3.4: The class "ApiPlatform\ParameterValidator\Validator\Pattern" is deprecated, use "\ApiPlatform\Metadata\Parameter::$constraints" instead.
{
    "exception": {}
}
INFO 16:59:06 php User Deprecated: Since api-platform/core 3.4: The class "ApiPlatform\ParameterValidator\Validator\Required" is deprecated, use "\ApiPlatform\Metadata\Parameter::$constraints" instead.
{
    "exception": {}
}
INFO 16:59:06 php User Deprecated: Since api-platform/core 3.4: Injecting the "ApiPlatform\JsonSchema\TypeFactoryInterface" inside "ApiPlatform\JsonSchema\SchemaFactory" is deprecated and "ApiPlatform\JsonSchema\TypeFactoryInterface" will be removed in 4.x.
{
    "exception": {}
}
INFO 16:59:06 request Matched route "_profiler".
{
    "route": "_profiler",
    "route_parameters": {
        "_route": "_profiler",
        "_controller": "web_profiler.controller.profiler::panelAction",
        "token": "eaee94"
    },
    "request_uri": "http://api.escalnet.escalconsulting.com/_profiler/eaee94",
    "method": "GET"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DebugHandlersListener::configure"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ValidateRequestListener::onKernelRequest"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "Nelmio\CorsBundle\EventListener\CorsListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Nelmio\\CorsBundle\\EventListener\\CorsListener::onKernelRequest"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "Symfony\Bridge\Doctrine\Middleware\IdleConnection\Listener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bridge\\Doctrine\\Middleware\\IdleConnection\\Listener::onKernelRequest"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelRequest"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::setDefaultLocale"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelRequest"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "ApiPlatform\Symfony\EventListener\AddFormatListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "ApiPlatform\\Symfony\\EventListener\\AddFormatListener::onKernelRequest"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "ApiPlatform\Symfony\EventListener\QueryParameterValidateListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "ApiPlatform\\Symfony\\EventListener\\QueryParameterValidateListener::onKernelRequest"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelRequest"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelRequest"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::configureLogoutUrlGenerator"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelRequest"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "ApiPlatform\Symfony\EventListener\ReadListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "ApiPlatform\\Symfony\\EventListener\\ReadListener::onKernelRequest"
}
DEBUG 16:59:06 event Notified event "kernel.request" to listener "ApiPlatform\Symfony\EventListener\DeserializeListener::onKernelRequest".
{
    "event": "kernel.request",
    "listener": "ApiPlatform\\Symfony\\EventListener\\DeserializeListener::onKernelRequest"
}
DEBUG 16:59:06 event Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Bundle\\FrameworkBundle\\DataCollector\\RouterDataCollector::onKernelController"
}
DEBUG 16:59:06 event Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController".
{
    "event": "kernel.controller",
    "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelController"
}
INFO 16:59:06 php User Deprecated: In ORM 3.0, the AttributeDriver will report fields for the classes where they are declared. This may uncover invalid mapping configurations. To opt into the new mode today, set the "reportFieldsWhereDeclared" constructor parameter to true. (AttributeDriver.php:77 called by App_KernelDevDebugContainer.php:2701, https://github.com/doctrine/orm/pull/10455, package doctrine/orm)
{
    "exception": {}
}
INFO 16:59:06 php User Deprecated: Creating Doctrine\ORM\Mapping\UnderscoreNamingStrategy without setting second argument $numberAware=true is deprecated and will be removed in Doctrine ORM 3.0. (UnderscoreNamingStrategy.php:47 called by App_KernelDevDebugContainer.php:2720, https://github.com/doctrine/orm/pull/7908, package doctrine/orm)
{
    "exception": {}
}
INFO 16:59:06 php User Deprecated: Not enabling lazy ghost objects is deprecated and will not be supported in Doctrine ORM 3.0. Ensure Doctrine\ORM\Configuration::setLazyGhostObjectEnabled(true) is called to enable them. (ProxyFactory.php:166 called by EntityManager.php:177, https://github.com/doctrine/orm/pull/10837/, package doctrine/orm)
{
    "exception": {}
}
DEBUG 16:59:06 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\IsSignatureValidAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\IsSignatureValidAttributeListener::onKernelControllerArguments"
}
DEBUG 16:59:06 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsCsrfTokenValidAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsCsrfTokenValidAttributeListener::onKernelControllerArguments"
}
DEBUG 16:59:06 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsGrantedAttributeListener::onKernelControllerArguments"
}
DEBUG 16:59:06 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelControllerArguments"
}
DEBUG 16:59:06 event Notified event "kernel.controller_arguments" to listener "Container5HPzWyu\RequestPayloadValueResolverGhost01ca9cc::onKernelControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Container5HPzWyu\\RequestPayloadValueResolverGhost01ca9cc::onKernelControllerArguments"
}
DEBUG 16:59:06 event Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments".
{
    "event": "kernel.controller_arguments",
    "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::onControllerArguments"
}

Stack Traces 2

[2/2] HttpException
Symfony\Component\HttpKernel\Exception\HttpException:
X-Auth-Token header is required

  at vendor/symfony/security-http/Firewall/ExceptionListener.php:216
  at Symfony\Component\Security\Http\Firewall\ExceptionListener->throwUnauthorizedException(object(BadCredentialsException))
     (vendor/symfony/security-http/Firewall/ExceptionListener.php:179)
  at Symfony\Component\Security\Http\Firewall\ExceptionListener->startAuthentication(object(Request), object(BadCredentialsException))
     (vendor/symfony/security-http/Firewall/ExceptionListener.php:117)
  at Symfony\Component\Security\Http\Firewall\ExceptionListener->handleAuthenticationException(object(ExceptionEvent), object(BadCredentialsException))
     (vendor/symfony/security-http/Firewall/ExceptionListener.php:87)
  at Symfony\Component\Security\Http\Firewall\ExceptionListener->onKernelException(object(ExceptionEvent), 'kernel.exception', object(TraceableEventDispatcher))
     (vendor/symfony/event-dispatcher/Debug/WrappedListener.php:115)
  at Symfony\Component\EventDispatcher\Debug\WrappedListener->__invoke(object(ExceptionEvent), 'kernel.exception', object(TraceableEventDispatcher))
     (vendor/symfony/event-dispatcher/EventDispatcher.php:206)
  at Symfony\Component\EventDispatcher\EventDispatcher->callListeners(array(object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener)), 'kernel.exception', object(ExceptionEvent))
     (vendor/symfony/event-dispatcher/EventDispatcher.php:56)
  at Symfony\Component\EventDispatcher\EventDispatcher->dispatch(object(ExceptionEvent), 'kernel.exception')
     (vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php:129)
  at Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher->dispatch(object(ExceptionEvent), 'kernel.exception')
     (vendor/symfony/http-kernel/HttpKernel.php:241)
  at Symfony\Component\HttpKernel\HttpKernel->handleThrowable(object(BadCredentialsException), object(Request), 1)
     (vendor/symfony/http-kernel/HttpKernel.php:91)
  at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
     (vendor/symfony/http-kernel/Kernel.php:193)
  at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
     (public/index.php:39)                
[1/2] BadCredentialsException
Symfony\Component\Security\Core\Exception\BadCredentialsException:
X-Auth-Token header is required

  at src/Security/AuthTokenAuthenticator.php:130
  at App\Security\AuthTokenAuthenticator->authenticate(object(Request))
     (vendor/symfony/security-http/Authenticator/Debug/TraceableAuthenticator.php:74)
  at Symfony\Component\Security\Http\Authenticator\Debug\TraceableAuthenticator->authenticate(object(Request))
     (vendor/symfony/security-http/Authentication/AuthenticatorManager.php:185)
  at Symfony\Component\Security\Http\Authentication\AuthenticatorManager->executeAuthenticator(object(TraceableAuthenticator), object(Request))
     (vendor/symfony/security-http/Authentication/AuthenticatorManager.php:167)
  at Symfony\Component\Security\Http\Authentication\AuthenticatorManager->executeAuthenticators(array(object(TraceableAuthenticator)), object(Request))
     (vendor/symfony/security-http/Authentication/AuthenticatorManager.php:149)
  at Symfony\Component\Security\Http\Authentication\AuthenticatorManager->authenticateRequest(object(Request))
     (vendor/symfony/security-http/Firewall/AuthenticatorManagerListener.php:38)
  at Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener->authenticate(object(RequestEvent))
     (vendor/symfony/security-http/Authenticator/Debug/TraceableAuthenticatorManagerListener.php:58)
  at Symfony\Component\Security\Http\Authenticator\Debug\TraceableAuthenticatorManagerListener->authenticate(object(RequestEvent))
     (vendor/symfony/security-bundle/Debug/WrappedLazyListener.php:46)
  at Symfony\Bundle\SecurityBundle\Debug\WrappedLazyListener->authenticate(object(RequestEvent))
     (vendor/symfony/security-bundle/Debug/TraceableFirewallListener.php:94)
  at Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener->callListeners(object(RequestEvent), object(Generator))
     (vendor/symfony/security-http/Firewall.php:93)
  at Symfony\Component\Security\Http\Firewall->onKernelRequest(object(RequestEvent), 'kernel.request', object(TraceableEventDispatcher))
     (vendor/symfony/event-dispatcher/Debug/WrappedListener.php:115)
  at Symfony\Component\EventDispatcher\Debug\WrappedListener->__invoke(object(RequestEvent), 'kernel.request', object(TraceableEventDispatcher))
     (vendor/symfony/event-dispatcher/EventDispatcher.php:206)
  at Symfony\Component\EventDispatcher\EventDispatcher->callListeners(array(object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener)), 'kernel.request', object(RequestEvent))
     (vendor/symfony/event-dispatcher/EventDispatcher.php:56)
  at Symfony\Component\EventDispatcher\EventDispatcher->dispatch(object(RequestEvent), 'kernel.request')
     (vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php:129)
  at Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher->dispatch(object(RequestEvent), 'kernel.request')
     (vendor/symfony/http-kernel/HttpKernel.php:159)
  at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1)
     (vendor/symfony/http-kernel/HttpKernel.php:76)
  at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
     (vendor/symfony/http-kernel/Kernel.php:193)
  at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
     (public/index.php:39)