什么是一个很好的PHP权限框架,允许列出资源?

时间:2011-12-14 21:13:18

标签: php frameworks roles acl

我正在构建一个新的应用程序,我需要一个权限框架来配合它。 以下是我们需要支持的一个简单示例:

使用数据模型:

user
----
id
role
type

resource
----
id
name
type

我们希望能够设置一个访问规则,该规则说用户可能只知道与它们具有相同类型的所有资源,除非他们具有admin角色(在这种情况下,他们可以看到所有内容)。然后我们希望能够提取一个可搜索/可分页的“用户知道的所有资源”列表。 (假设有500,000个资源。)

我试着把它变成Zend_acl,但是我认为我可以在zend_acl中定义所有规则,它是逐个资源的,而且没有适当的支持来获取列表

那么什么是支持基于关系的规则(而不是列表)的好的PHP权限框架呢?

1 个答案:

答案 0 :(得分:3)

您可能仍然可以使用ACL,只要它可以扩展到适合您的目的。例如,Zend_Acl允许您使用write your own ACL assertions来覆盖基于资源的行为。您还可以扩展Zend_Acl以提供该用户可用的所有资源的列表。