本文整理匯總了PHP中Symfony\Component\Security\Core\Exception\AuthenticationException::getToken方法的典型用法代碼示例。如果您正苦於以下問題:PHP AuthenticationException::getToken方法的具體用法?PHP AuthenticationException::getToken怎麽用?PHP AuthenticationException::getToken使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Symfony\Component\Security\Core\Exception\AuthenticationException
的用法示例。
在下文中一共展示了AuthenticationException::getToken方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: onAuthenticationFailure
public function onAuthenticationFailure(Request $request, AuthenticationException $exception)
{
$targetPath = $this->failureDefault;
$this->logger->debug('Authentication failure handled by ' . __CLASS__, [$exception, $exception->getPrevious(), $exception->getToken()]);
if ($exception instanceof BadCredentialsException && $exception->getPrevious() instanceof UsernameNotFoundException && $exception->getToken() instanceof Token && $exception->getToken()->getRoles()[0]->getRole() == ThirdPartyAuthentication::IDENTIFIED) {
$this->logger->info('Go to register');
$targetPath = 'guest_register';
$request->getSession()->set(self::IDENTIFIED_TOKEN, $exception->getToken());
} else {
$request->getSession()->set(SecurityContextInterface::AUTHENTICATION_ERROR, $exception);
}
return $this->httpUtils->createRedirectResponse($request, $targetPath);
}
示例2: onAuthenticationFailure
public function onAuthenticationFailure(Request $request, AuthenticationException $exception)
{
$targetPath = $this->failureDefault;
$token = $exception->getToken();
$this->logger->debug('Authentication failure handled by ' . __CLASS__, [$exception, $exception->getPrevious(), $token]);
if ($exception instanceof BadCredentialsException && $exception->getPrevious() instanceof UsernameNotFoundException && $token instanceof Token && $token->getRoles()[0]->getRole() == ThirdPartyAuthentication::IDENTIFIED) {
$this->logger->info('Autoregister');
// create new user, persist and authenticate
$user = $this->repository->create($token->getUserUniqueIdentifier(), $token->getProviderKey(), $token->getAttribute('nickname'));
$newToken = new Token($token->getFirewallName(), $token->getProviderKey(), $token->getUserUniqueIdentifier(), $user->getRoles());
$this->repository->persist($user);
$newToken->setUser($user);
$this->security->setToken($newToken);
return $this->successLoginHandler->onAuthenticationSuccess($request, $newToken);
}
$request->getSession()->set(SecurityContextInterface::AUTHENTICATION_ERROR, $exception);
return $this->httpUtils->createRedirectResponse($request, $targetPath);
}
示例3: onAuthenticationFailure
/**
* {@inheritdoc}
*/
public function onAuthenticationFailure(Request $request, AuthenticationException $exception)
{
$data = ['reason' => 'Credentials refused!', 'username' => !$exception->getToken() ? 'unknown' : $exception->getToken()->getUsername()];
return new JsonResponse($data, JsonResponse::HTTP_UNAUTHORIZED);
}