且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Symfony:如何从数据库刷新经过身份验证的用户?

更新时间:2023-12-05 23:16:40

尝试一下:

$em = $this->getDoctrine()->getManager();
$loggedInUser = $this->get('security.context')->getToken()->getUser();
$loggedInUser->addRole('ROLE_XYZ');

$em->persist($loggedInUser);
$em->flush();

$token = new \Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken(
  $loggedInUser,
  null,
  'main',
  $loggedInUser->getRoles()
);

$this->container->get('security.context')->setToken($token);