我想Symfony的2.0 ACL添加到我的frameworkless PHP应用程序。 由于缺乏关于如何使用安全组件作为独立的我有完全糊涂了,我已经得到了stucked有问题文件的:什么类包括第一? 哪个对象实例? 是否有可能不模型和控制器使用?
如何任何建议启动或任何好的链接?
谢谢
我想Symfony的2.0 ACL添加到我的frameworkless PHP应用程序。 由于缺乏关于如何使用安全组件作为独立的我有完全糊涂了,我已经得到了stucked有问题文件的:什么类包括第一? 哪个对象实例? 是否有可能不模型和控制器使用?
如何任何建议启动或任何好的链接?
谢谢
该SecurityServiceProvider为Silex的可能是一个良好的开端,因为它集成了所有的重要组成部分服务在一个文件中。 虽然大,你可能会发现它更容易比Symfony2中的SecurityBundle消化。
在保持你的理智的兴趣,你应该考虑使用服务容器来组织所有这些对象。 在上述供应商类中,Silex的应用程序类是一个疙瘩实例,所以你应该能够将它移植单机疙瘩多大的努力。 我看到了这一点,因为集成了疙瘩服务容器为您的应用程序应该比采用Silex的框架创伤更小。
一旦你的基本安全组件类的工作,你应该能够随着下面的ACL文件 ,并根据需要在您的容器中添加额外的服务。 在这一点上,SecurityBundle的特定ACL-部分可能证明是有益的,因为你可以在专注于相关位。 请记住,有多个菜谱条目的文档中的ACL。
什么课首先包括哪些内容?
你很可能需要包括至少部分如果不是全部的安全核心,那么,你是想用这曾经ACL实现。 你可以看一下那些在ACL实现的开头,并看看他们什么扩展的依赖关系。 例如, ACL/DBAL
具有以下依存关系堪称标题:
namespace Symfony\Component\Security\Acl\Dbal;
use Doctrine\DBAL\Driver\Connection;
use Doctrine\DBAL\Driver\Statement;
use Symfony\Component\Security\Acl\Model\AclInterface;
use Symfony\Component\Security\Acl\Domain\Acl;
use Symfony\Component\Security\Acl\Domain\Entry;
use Symfony\Component\Security\Acl\Domain\FieldEntry;
use Symfony\Component\Security\Acl\Domain\ObjectIdentity;
use Symfony\Component\Security\Acl\Domain\RoleSecurityIdentity;
use Symfony\Component\Security\Acl\Domain\UserSecurityIdentity;
use Symfony\Component\Security\Acl\Exception\AclNotFoundException;
use Symfony\Component\Security\Acl\Exception\NotAllAclsFoundException;
use Symfony\Component\Security\Acl\Model\AclCacheInterface;
use Symfony\Component\Security\Acl\Model\AclProviderInterface;
use Symfony\Component\Security\Acl\Model\ObjectIdentityInterface;
use Symfony\Component\Security\Acl\Model\PermissionGrantingStrategyInterface;
但是,你可能需要检查每个那些它们的依赖上市,并加载那些为好。
我会支持轨道通过的依赖,并跟踪有什么需要的东西。 剔除这些类到一个单独的位置,这样你只需要什么,并使用一些错误捕获,以确定你拥有这一切。
哪个对象实例?
您的ACL。 如果依赖关系的所有决定,并加载,那么你应该能够实例的ACL类对象。
是否有可能不模型和控制器使用?
说实话,我不知道,使用ACL S2之外可能没有一大堆的工作,但如果你能得到它与它需要的一切实例,那么你应该能够使用该对象没有一个MVC模式。
不幸的是,从我的理解S2的,它是一个完整的堆栈框架,意味着是一个全有或全无之类的话。 但是如果我去尝试,并使其发挥作用,这将是我会去的方式。
如果妳想要了解如何使用使用Symfony2的组件,以及如何集成了您的项目中再读取法比安斯基Potencier博客“创建自己的框架”的职位,肯定会帮助ü理解框架的核心,从如何在引导Symfony2的组件您项目
也有很好的文档, ACL在symfony的网站