代码之家  ›  专栏  ›  技术社区  ›  A.Seddighi

细枝角色检查是重定向

  •  -1
  • A.Seddighi  · 技术社区  · 6 年前

    is_granted() 不返回布尔值,只重定向到登录路径。

    {% if is_granted('ROLE_SUPER_ADMIN') == true %} # without == true tested.
            <a href="{{ path('foo_bar') }}">Foo Bar Link</a>
    {% endif %}
    

    符号:4.1

    1 回复  |  直到 6 年前
        1
  •  0
  •   A.Seddighi    6 年前

    当我更换验证器时,我的问题就解决了

     $isPasswordValid = $this->encoder->isPasswordValid($user, $token->getCredentials());
     if ($isPasswordValid) {
            return new UsernamePasswordToken($user, $user->getPassword(), $providerKey, $user->getRoles());
     }
    

    更改为:

     $isPasswordValid = $this->encoder->isPasswordValid($user, $token->getCredentials());
     if ($isPasswordValid or $token->getUser() instanceof User) {
            return new UsernamePasswordToken($user, $user->getPassword(), $providerKey, $user->getRoles());
     }
    

    我附加 $token->getUser() instanceof User 到目前为止。