本文整理匯總了PHP中Symfony\Component\Security\Core\Authentication\Token\TokenInterface::getAttributes方法的典型用法代碼示例。如果您正苦於以下問題:PHP TokenInterface::getAttributes方法的具體用法?PHP TokenInterface::getAttributes怎麽用?PHP TokenInterface::getAttributes使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Symfony\Component\Security\Core\Authentication\Token\TokenInterface
的用法示例。
在下文中一共展示了TokenInterface::getAttributes方法的8個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: authenticateToken
public function authenticateToken(TokenInterface $token, UserProviderInterface $userProvider, $providerKey)
{
$username = $token->getUsername();
$user = $userProvider->loadUserByUsername($username);
if ($user instanceof SamlUserInterface) {
$user->setSamlAttributes($token->getAttributes());
}
$authenticatedToken = new SamlToken($user, $user->getRoles());
$authenticatedToken->setAttributes($token->getAttributes());
return $authenticatedToken;
}
示例2: authenticate
public function authenticate(TokenInterface $token)
{
try {
$localUser = $this->userProvider->loadUserByUsername($token->getUser());
$authorizedToken = new ConnectToken($localUser, $token->getAccessToken(), $token->getApiUser(), $this->providerKey, $token->getScope(), $localUser->getRoles());
$authorizedToken->setAttributes($token->getAttributes());
return $authorizedToken;
} catch (\Exception $repositoryProblem) {
throw new AuthenticationServiceException($repositoryProblem->getMessage(), $token, 0, $repositoryProblem);
}
}
示例3: createUser
public function createUser(TokenInterface $token)
{
$username = $token->getUser();
$attributes = $token->getAttributes();
if (is_null($token->getRoles())) {
$roles = isset($attributes['roles']) ? $attributes['roles'] : null;
unset($attributes['roles']);
} else {
$roles = $token->getRoles();
}
return new SpawnedUser($username, $attributes, $roles);
}
示例4: authenticate
public function authenticate(TokenInterface $token)
{
$user = $this->userProvider->loadUserByUsername($token->getUsername());
if (!$user) {
throw new AuthenticationException('The authentication failed.');
}
$authenticatedToken = new ChoiceAuthToken($user->getRoles());
$authenticatedToken->setAttributes($token->getAttributes());
$authenticatedToken->setUser($user);
$authenticatedToken->setProviderKey($this->providerKey);
$authenticatedToken->setAuthenticated(true);
return $authenticatedToken;
}
示例5: authenticate
public function authenticate(TokenInterface $token)
{
try {
$localUser = $this->userProvider->loadUserByUsername($token->getUser());
$authorizedToken = new ConnectToken($localUser, $token->getAccessToken(), $token->getApiUser(), $this->providerKey, $token->getScope(), $localUser->getRoles());
$authorizedToken->setAttributes($token->getAttributes());
return $authorizedToken;
} catch (\Exception $repositoryProblem) {
if (!method_exists('Symfony\\Component\\Security\\Core\\Exception\\AuthenticationServiceException', 'setToken')) {
throw new AuthenticationServiceException($repositoryProblem->getMessage(), $token, 0, $repositoryProblem);
} else {
$e = new AuthenticationServiceException($repositoryProblem->getMessage(), 0, $repositoryProblem);
$e->setToken($token);
throw $e;
}
}
}
示例6: let
function let(UserProviderInterface $userProvider, LdapUserChecker $userChecker, LdapManager $ldap, TokenInterface $token, LdapUser $user, LdapConnectionInterface $connection, AuthenticationResponse $response, \Symfony\Component\EventDispatcher\EventDispatcherInterface $dispatcher)
{
$this->operation = (new AuthenticationOperation())->setUsername('foo')->setPassword('bar');
$token->getUsername()->willReturn('foo');
$token->getCredentials()->willReturn('bar');
$token->hasAttribute('ldap_domain')->willReturn(false);
$token->getAttributes()->willReturn([]);
$token->getUser()->willReturn($user);
$userProvider->loadUserByUsername('foo')->willReturn($user);
$connection->getConfig()->willReturn(new DomainConfiguration('foo.bar'));
$connection->execute($this->operation)->willReturn($response);
$response->isAuthenticated()->willReturn(true);
$ldap->getConnection()->willReturn($connection);
$ldap->getDomainContext()->willReturn('foo.bar');
$user->getUsername()->willReturn('foo');
$user->getRoles()->willReturn(['ROLE_USER']);
$user->isAccountNonLocked()->willReturn(true);
$user->isEnabled()->willReturn(true);
$user->isAccountNonExpired()->willReturn(true);
$user->isCredentialsNonExpired()->willReturn(true);
$this->beConstructedWith('restricted', true, $userProvider, new LdapUserChecker(), $ldap, $dispatcher);
}
示例7: doAuthentication
/**
* @param UserInterface $user
* @param TokenInterface $token
* @return UsernamePasswordToken
*/
protected function doAuthentication(UserInterface $user, TokenInterface $token)
{
$auth = (new AuthenticationOperation())->setUsername($user->getUsername())->setPassword($token->getCredentials());
/** @var AuthenticationResponse $response */
$response = $this->ldap->getConnection()->execute($auth);
if (!$response->isAuthenticated()) {
$this->userChecker->checkLdapErrorCode($user, $response->getErrorCode(), $this->ldap->getConnection()->getConfig()->getLdapType());
throw new BadCredentialsException($response->getErrorMessage(), $response->getErrorCode());
}
$this->dispatcher->dispatch(LdapLoginEvent::SUCCESS, new LdapLoginEvent($user, $token));
$newToken = new UsernamePasswordToken($user, null, $this->providerKey, $user->getRoles());
$newToken->setAttributes($token->getAttributes());
return $newToken;
}
示例8: getAttributes
public function getAttributes()
{
return $this->innerToken->getAttributes();
}