问题标签 [symfony-security]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1348 浏览

security - SonataUser - 具有角色安全性的自定义选民

我正在使用 SonataAdmin sonata.admin.security.handler.role(所以我在这里不使用 ACL)。

我正在尝试使用自定义选民限制对对象的访问。

服务

选民 应用程序...\Voter\CompanyVoter.php

但我总是得到一个实例Application\...\Voter\CompanyVoter而不是预期的对象来限制。

可能是什么原因?

isGranted()您是在告诉我 Sonata在使用角色安全处理程序时不会将对象传递给吗?

0 投票
1 回答
1803 浏览

symfony - 将对象传递给自定义选民?

我一直在阅读有关在 Symfony 2 中创建自定义选民的信息。根据此页面,可以将对象传递给 securitycontext 的 isGranted 方法,我在自己的控制器中完成了该方法:

看起来投票方法应该接受它,但是,当我在 $object 参数上调用 get_class 时,而不是获取我的 Page 实体,我得到:

Symfony\Component\HttpFoundation\Request

我的选民在我的 services.yml 文件中被定义为服务:

我哪里错了?

任何建议表示赞赏。

谢谢

0 投票
1 回答
464 浏览

security - Symfony2 - 为什么即使是超级管理员也需要选民

我注意到我的选民即使是超级管理员用户也会被征集。

它是否按预期工作?

如果是的话,我认为 SuperAdmin 的理念是他们系统地拥有所有权限,这样我们就不必一一授予他们每个权限。在那种情况下,为什么不授予所有选民访问权限?

我总是要放

在我的选民中?

0 投票
2 回答
102 浏览

symfony - symfony2 中的防火墙安全问题

我正在使用 symfony2 并且对 symfony 防火墙中的身份验证和访问控制有一点问题。

这是我的 security.yml

事情在这个站点中,没有 /admin 路径或管理员的特定路径。admin 由每个页面中的角色定义,并且页面的内容根据用户类型而不同。(我知道这很糟糕)。

这意味着我必须让所有用户访问除某些页面之外的所有页面,如果他们登录,他们会获得不同类型的数据。

但我有以下错误:

当我登录并将用户发送到另一条路径(不被视为安全路径)时,它不显示任何信用信息?!!!

我应该怎么做才能拥有和访问具有这种结构的数据?

0 投票
1 回答
1108 浏览

php - Symfony2 自定义用户提供程序不起作用

我有一个自定义用户提供程序,遵循以下指南:

http://symfony.com/doc/current/cookbook/security/custom_provider.html

一切正常,但我无法访问受限区域。

在我的UserProvider课堂上,我将$rolesvar 设置为 have array("ROLE_USER"),这是我访问路由 app/list 所需的权限,但是当我转到 app/list 时,Symfony 会一次又一次地重定向我登录。

我已经看到了调试工具栏,它的结果是:

我的 security.yml 文件是:

我的UserProvider班级如下所示。我只是调用一个 XML 服务,它给了我一个我将存储在我的令牌中UserClass

这是我UserObjectDaoAuthenticationProvider::checkAuthentication()

这是我的routing.yml:

0 投票
1 回答
2478 浏览

symfony - @Security 注释的自定义消息

我正在尝试@Security为我的路线使用注释。像这样:

当安全限制引发异常时,我收到消息Expression "has_role('ROLE_USER')" denied access

向最终用户显示这是不可接受的,因此我正在尝试找到一种方法来自定义注释消息。

简单的解决方法是不使用@Secutity注释并编写如下代码:

但这不太方便且可读性较差。

是否可以将自定义消息写入@Security注释?

0 投票
1 回答
278 浏览

php - 如何实现基于会话变量的授权系统?

我正在尝试将我的应用程序从 Silex 迁移到 Symfony。

我正在使用 Silexbefore(...)方法注册要在执行操作本身之前执行的方法,以检查是否设置了某些会话变量。
我可以对 Symfony 中的事件监听器做类似的事情,但是控制器需要不同的 before 方法来包含操作方法。

目前,Silex 看起来如下所示:

如果之前选择了容器对象,则完全经过身份验证的用户可以访问某些控制器操作。所以最后看守方法是一种访问控制。
如果用户在没有选择对象的情况下访问操作,我想将用户重定向到选择或类似内容。

一种想法是将其实现为角色并在会话期间临时授予角色。
我可以将它与access_denied_url调用的自定义控制器或更好的方法结合使用来实现自己的access_denied_handler来处理访问控制处理程序拒绝的访问。
似乎不可能在用户登录时临时存储角色。

另一种思路是使用access_control下的allow_if表达式,不过还有一点,如果出现异常(access denied,如何实现Access Denied Handler),我该如何反应?

您将如何实施这样的系统?
感谢您的建议中的任何提示!

0 投票
2 回答
318 浏览

symfony - Symfony2 保护整个控制器

我在控制器中有不同的用户操作。我想保护它们,以便匿名用户无法访问此操作。(他们不依赖于特殊的前缀路径)

根据: http ://symfony.com/doc/current/book/security.html#securing-a-controller

我必须确保每个动作分开。这不是很方便,并且会产生重复的代码。

是否有可能为控制器的所有操作抛出 accessdenied 异常?

0 投票
2 回答
287 浏览

symfony - 如何向 ExceptionListener 注入额外的服务?

我想setTargetPath从默认的ExceptionListener文档)中覆盖。但我需要额外的服务来处理这个。

在我看来,只有覆盖服务定义,将其复制到我的服务定义并创建自己的构造函数的方法,但我不喜欢这种方法。

有没有其他方法可以做到这一点?

0 投票
1 回答
297 浏览

php - Symfony2 中的权限管理方法

我正在创建一个有用户的 Symfony2 网站,每个用户都可以拥有多个权限,如下所示:

对于这样的系统,正确的权限系统是什么?
RolesACLsvoters或 别的什么?

谢谢