Аутентификация безопасности Symfony

Почему в моей панели «Отладка» я вижу «Вы не аутентифицированы». это у меня есть печатный экран, и это я хочу, чтобы на принтере я использовал symfony_book, и если у меня дома все работает отлично, НО:

В моем варианте пользователь аутентифицируется на ДРУГОЙ САЙТЕ, а на моем сайте у меня есть пользовательские данные для методов GET – EMAIL, SECRET KEY AND REFERENCE

http://aog.local/app_dev.php/auth/enko@gmail.com/962cc9a06924034d1285e8d75b2faf‌​2d/00223311121 

Как это сделать, я могу сделать аутентификацию, как мне аутентифицироваться, чтобы появиться глобальная переменная user printscreen ????

Я создаю бит службы авторизации, этот сервис не аутентифицируется

Я использую Symfony 2.6 и имею сущность Разработчик и Пользователь расширяет SUser -> SUser реализует UserInterface thgis – это маршрутизация для auth:

 #Enter routing artel_profile_auth: path: /auth/{email}/{secretKey}/{referenceId} defaults: { _controller: ArtelProfileBundle:DeveloperProfile:auth } login_route: path: /login defaults: { _controller: ArtelProfileBundle:Security:login } login_check: path: /login_check defaults: { _controller: ArtelProfileBundle:Security:securityCheck } index: pattern: / defaults: { _controller: ArtelProfileBundle:Security:index } 

и действие:

  public function authAction($email, $secretKey, $referenceId) { $authenticator = $this->get('artel.profile.authenticator'); try { $authDeveloper = $authenticator->auth($email, $secretKey, $referenceId); return $this->redirect($this->generateUrl('artel_profile_homepage', array('username' => $authDeveloper->getUsername())) .'#personal-information'); } catch (\Exception $error) { return new Response($error->getCode() . ': '.$error->getMessage()); } } 

и artel.profile.authenticator:

 <?php namespace Artel\ProfileBundle\Helper; class Authenticator { const SESSION_NAME = 'developer_auth'; private $session; private $secretAppKey; private $developerRepository; private $codeuserreferenceRepository; public function __construct($session, $secretAppKey, $developerRepository, $codeuserreferenceRepository) { $this->session = $session; $this->secretAppKey = $secretAppKey; $this->developerRepository = $developerRepository; $this->codeuserreferenceRepository = $codeuserreferenceRepository; } public function auth($email, $secretKey, $referenceId) { $this->validateSecretAppKey($secretKey, $referenceId); //todo: We need to match $referenceId with email in validateDeveloper $developer = $this->validateDeveloper($referenceId); $this->setSession($developer); return $developer; } public function authAdmin($email, $secretKey, $referenceId) { $this->validateSecretAppKey($secretKey, $referenceId); //todo: We need to match $referenceId with email in validateDeveloper $developer = $this->validateAdminDeveloper($referenceId); $this->setSession($developer); return $developer; } public function check($developer) { $result = false; $session = $this->session->get(self::SESSION_NAME); if ($session && $session == $developer->getId()) { $result = true; } return $result; } public function logout() { $this->session->remove(self::SESSION_NAME); } protected function validateDeveloper($referenceId) { $code_user_reference = $this->codeuserreferenceRepository->findOneByCodereference($referenceId); $id = $code_user_reference->getDeveloper()->getId(); $developer = $this->developerRepository->findOneById($id); if (! $developer) { $this->exception('developer not found', 100); } return $developer; } protected function validateAdminDeveloper($referenceId) { $code_user_reference = $this->codeuserreferenceRepository->findOneByCodereference($referenceId); $id = $code_user_reference->getDeveloper()->getId(); $developer = $this->developerRepository->findOneById($id); $role = $developer->getRole(); if ($role != 'ROLE_ADMIN') { $this->exception('developer not Admin', 100); } return $developer; } protected function validateSecretAppKey($secretKey, $referenceId) { if ($secretKey != md5($referenceId.$this->secretAppKey)) { $this->exception('secret ket is not valid', 101); } } protected function setSession($developer) { $this->session->set(self::SESSION_NAME, $developer->getId()); } protected function exception($message, $code) { throw new \Exception($message, $code); } } 

Но в панели отладки: «Вы не аутентифицированы». Это мой секрет, может быть, проблема? |

 security: encoders: Artel\ProfileBundle\Entity\Users: algorithm: sha1 encode_as_base64: false iterations: 1 Artel\ProfileBundle\Entity\Developers: algorithm: sha1 encode_as_base64: false iterations: 1 Symfony\Component\Security\Core\User\User: plaintext role_hierarchy: ROLE_CLIENT: ROLE_USER ROLE_COMPANY: ROLE_USER ROLE_FREELANCER: ROLE_USER ROLE_ADMIN: [ROLE_MODERATOR, ROLE_CLIENT, ROLE_COMPANY, ROLE_FREELANCER] ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_MODERATOR, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH] providers: chain_provider: chain: providers: [user_db, user_dev, in_memory] providers: [user_dev, in_memory] user_db: entity: { class: Artel\ProfileBundle\Entity\Users, property: email } user_dev: entity: { class: Artel\ProfileBundle\Entity\Developer, property: email } in_memory: memory: users: admin_tyty: { password: adminpass_tyty, roles: [ 'ROLE_ADMIN' ] } firewalls: default: anonymous: ~ http_basic: ~ form_login: login_path: /login check_path: /login_check access_control: - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY } - { path: ^/, roles: ROLE_ADMIN } 

В моем варианте пользователь аутентифицируется на ДРУГОЙ САЙТЕ, а на моем сайте у меня есть пользовательские данные для методов GET – EMAIL, SECRET KEY AND REFERENCE

  http://aog.local/app_dev.php/auth/enko@gmail.com/962cc9a06924034d1285e8d75b2faf‌​2d/00223311121