protected function sessionSection(Request $request): SectionInterface
    {
        if (empty($request->getAttribute(SessionStarter::ATTRIBUTE))) {
            throw new AuthException("Unable to use authorization thought session, no session exists");
        }

        /** @var SessionInterface $session */
        $session = $request->getAttribute(SessionStarter::ATTRIBUTE);

        return $session->getSection($this->section);
    }