Security Symfony3审核控制器
我试图在symfony3的控制器中实现安全审计。类似于中EntityAudit的要求 案例说明:/{u locale}/introduction.{u format}页面具有访问权限,需要将以下信息记录到数据库表中。 A.使用的区域设置 B要求的格式 C是匿名请求还是授权为 D请求时间 同时,“计数器”表增加控制器的请求“命中计数器”Security Symfony3审核控制器,security,audit,symfony,Security,Audit,Symfony,我试图在symfony3的控制器中实现安全审计。类似于中EntityAudit的要求 案例说明:/{u locale}/introduction.{u format}页面具有访问权限,需要将以下信息记录到数据库表中。 A.使用的区域设置 B要求的格式 C是匿名请求还是授权为 D请求时间 同时,“计数器”表增加控制器的请求“命中计数器” 最好的做法是什么,只需几行代码或参考文档就足够了。我更喜欢使用EventListener这样占用的空间更小 在以下情况下,使用EventListener是最佳实践
最好的做法是什么,只需几行代码或参考文档就足够了。我更喜欢使用
EventListener
这样占用的空间更小
在以下情况下,使用EventListener
是最佳实践。向审计部门发送电子邮件、跟踪信息、日志记录、异常、API订阅等
因此,您可以向服务.yml
添加一个侦听器,如下所示
acme.demo.listener.your_listener:
class: Acme\DemoBundle\EventListener\YourListener
tags:
- { name: kernel.event_listener, event: kernel.request, method: onKernelRequest }
请参阅更多详细信息
无论用户是匿名用户还是经过身份验证的用户,请使用以下命令:
Symfony\Component\Security\Core\Authentication\Token\AnonymousToken代码>和
Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface;
您可以从事件请求获取区域设置
Symfony\Component\HttpKernel\Event\GetResponseEvent;
对于格式,在GetResponseEvent的请求对象上有一个方法getRequestFormat()
。
RequestTime只是new\DateTime()
所以一切都会好起来的