问题标签 [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 回答
4687 浏览

php - security.yml 导致 InvalidArgumentException:“您必须至少添加一个身份验证提供程序”

根据教程,我删除了内存提供程序和 DemoBundle,并添加了数据库提供程序。但我得到InvalidArgumentException“您必须至少添加一个身份验证提供程序”

我的security.yml:

我还尝试使用 YAML 可视化工具,以确保我没有搞砸缩进,这是正确的。

0 投票
1 回答
319 浏览

php - 即使应用程序处于活动状态并且人们正在处理它,会话也会结束

我正在处理的应用程序中有一个“奇怪”的问题,到目前为止我找不到解决这个问题的方法。该应用程序使用 Symfony2.6.x 并依赖于多个 Ajax 调用。所有的时间请求都是通过 Ajax 发出的。所以,当我登录到应用程序(使用 FOSUserBundle)时,Symfony 会自动启动一个新会话,对吗?好的,从那一刻到config.yml会话生命周期定义的时间(参见下面的配置),应用程序仍在工作,但在某些时候我被重定向到登录页面并且会话关闭,即使我正在积极处理应用程序。我最好的方法是在 Symfony 或 PHP 中的会话生命周期中不考虑 AJAX 调用,我是对的吗?

我对这个问题的最佳方法和解决方案,不知道我是否正确,也没有尝试过,我想在这里听听一些人的意见,是重新生成会话的 ID(通过调用migrate()当前活动会话) 每次进行 AJAX 调用时,这样会话将保持活动状态,这种方法是否正确?有什么建议吗?

这是我在 config.yml 中用于会话部分的配置:

注意: 这篇文章和我的一篇文章基本上都在谈论相同的内容,但我仍然没有解决这个问题,它正在扼杀我的应用程序和我试图找到解决方案的头脑。

0 投票
1 回答
70 浏览

symfony - 扩展 Symfony2 用户对象

在我的数据模型中,我有两个实体:“公司”和“客户”。公司代表我拥有的公司,客户就是我的客户。所有公司和客户都应该有自己的用户帐户才能登录。阅读 Symfony2 的安全性我创建了这个模型,其中公司和客户扩展了Symfony2 安全性所需的用户对象

我的问题是:这可以在 Symfony2 安全框架中使用身份验证和授权吗?此外,如果您有多个映射到用户的实体,这是对数据建模的常用方法吗?

在此处输入图像描述

0 投票
1 回答
953 浏览

php - $security 的默认值应该是多少?

我正在研究这种方法:

但是当它被调用时我得到了这个错误:

控制器 "GroupDCA\PDOneBundle\Controller\LoginController::loginAction()" 要求您为 "$security" 参数提供一个值(因为没有默认值或者因为在此参数之后有一个非可选参数)。

该参数的默认值应该是什么?我使用的方式对吗?

0 投票
1 回答
153 浏览

symfony - 我可以使用选民删除集合中的项目吗

我想使用选民来增强我的代码的安全性。我只希望某些用户能够删除项目集合。

这是我的例子:
我有一篇文章和与文章相关的标签。我希望文章的作者能够删除与该文章关联的标签(只有文章的作者可以这样做)

我正在考虑使用选民(检查用户是否是文章的作者),但我在互联网上找到的每个示例都显示从树枝或控制器调用的选民......而收集选项“允许-delete" symfony 从实体 Article 调用方法 removeTag($tag)。我也看不到我可以如何/在哪里打电话给选民。

0 投票
2 回答
6957 浏览

symfony - 保护 Symfony2 中的所有 url

我正在使用 Symfony 2.6.6。还有我的结构文件夹

LoginController已经loginAction()并且loginCheckAction()
LoginAction()将显示登录表单并loginCheckAction()进行检查。

我看到一些教程来创建LoginController.php. 用户登录后通过检查我设置:

我的目的是:所有用户必须登录才能访问我的网络应用程序的所有页面。

但是我的网站有很多控制器和操作(页面)。

我的想法是:检查所有控制器的所有操作中是否存在“登录”会话,如果不存在则重定向到登录操作。

但我认为这太手动了。Symfony 最好的方法是什么?

更新 1:
之后我尝试在我的security.yml文件中添加一些代码。如果用户未登录,它会重定向到登录页面,但它总是重定向到登录页面。我想如果用户登录(有“登录”部分)它可以访问其他页面。怎么做 谢谢

更新 2
这是我的Login Controller

这是我的 Other1Controller.php

它总是重定向到登录页面。在我填写我的字段并提交登录后,它仍然重定向到登录页面?我该如何解决谢谢。

0 投票
2 回答
866 浏览

symfony - 如何在 Symfony 中测试安全防火墙后面的页面?

在 Symfony 的说明书中,有一个名为How to Simulate Authentication with a Token in a Functional Test的页面。其中,据说:

如何在功能测试中模拟 HTTP 身份验证中描述的技术更简洁,因此是首选方法。

此外,在上面引用链接的页面上,文档说:

诀窍是在防火墙中包含 http_basic 密钥以及 form_login 密钥

这告诉我,拥有form_login密钥和密钥是可以的http_basic,并且应该以某种方式http_basic优先。

这是我的config_test.yml配置文件:

但是,当我在环境中打开我的应用程序时test,我仍然会被重定向到 login_form URL。

为什么没有http_basic像文档所说的那样设置行为,即它被激活而不是form_login

0 投票
2 回答
171 浏览

php - 无法获取注销操作奏鸣曲项目

这是我的 security.yml 文件

我的问题是注销问题,我无法在主控制器中访问注销功能。单击“注销”时出现此错误 您必须在安全防火墙配置中激活注销。

0 投票
3 回答
17161 浏览

php - 注销后如何重定向到主页?

我在 symfony 上提供了一个预构建项目,其中注销会话重定向到登录屏幕,但现在我希望该页面重定向到主页上。我在编码文件中发现的是:

在基本树枝文件中:

在 routing.yml

0 投票
1 回答
162 浏览

symfony - 自定义身份验证未正确验证用户身份

我在 symfony 2.6 中设置了我自己的自定义身份验证器,但是我遇到了一个问题。它没有正确验证我的用户。它首先验证成功,然后失败。

这是我的security.yml

我的自定义身份验证器

还有我的日志