gpt4 book ai didi

symfony - 检查是否为 Symfony2 ACL 中的特定用户授予角色

转载 作者:行者123 更新时间:2023-12-04 03:26:52 26 4
gpt4 key购买 nike

我想检查是否为 Symfony2 中的特定用户(不是登录用户)授予了角色。
我知道我可以通过以下方式检查登录用户:

$securityContext = $this->get('security.context');

if (false === $securityContext->isGranted('VIEW', $objectIdentity)) {
//do anything
}

但是如果我是登录用户并且我想检查其他用户是否 已授予 ??

最佳答案

“VIEW”是权限,而不是角色。

检查用户是否拥有权限(无论是角色还是权限)的最佳方法是访问 AccessDecisionManager。就像是:

$token = new UsernamePasswordToken($user, 'none', 'none', $user->getRoles());
$attributes = is_array($attributes) ? $attributes : array($attributes);
$this->get('security.access.decision_manager')->decide($token, $attributes, $object);

在此处查看原始答案: https://stackoverflow.com/a/22380765/971254详情。

关于symfony - 检查是否为 Symfony2 ACL 中的特定用户授予角色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24078270/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com