/** * @param OAuthEvent $event */ public function onPreAuthorizationProcess(OAuthEvent $event) { /** @var User $user */ $user = $event->getUser(); if ($user->getClients()->contains($event->getClient())) { $event->setAuthorizedClient(true); return; } $user->getClients()->add($event->getClient()); $this->manager->flush(); $event->setAuthorizedClient(true); }
public function onPreAuthorizationProcess(OAuthEvent $event) { /** @var Client $client */ $client = $event->getClient(); if ($client->isSkipClientAuth()) { $event->setAuthorizedClient(true); } else { /** @var UserInterface $user */ $user = $event->getUser(); //if there is already a token, don't prompt the request for the permissions again //@TODO need to verify you asking for the same permissions! $event->setAuthorizedClient($this->accessTokenManager->findTokenBy(['client' => $client, 'user' => $user]) != null); } }
public function onPreAuthorizationProcess(OAuthEvent $event) { $repo = $this->entityManager->getRepository('ActsCamdramApiBundle:Authorization'); if ($auth = $repo->findOne($event->getUser(), $event->getClient())) { if ($auth->hasScopes($this->getScopes())) { $event->setAuthorizedClient(true); } } }
public function onPreAuthorizationProcess(OAuthEvent $event) { if ($event->getClient()->getTrusted()) { $event->setAuthorizedClient(true); return true; } if ($user = $this->getUser($event)) { $event->setAuthorizedClient($user->hasClient($event->getClient())); } }