0

我想使用 Zend Framework 2 创建一个 RESTful API。尽管我对 ZF2 非常陌生,但我还是选择了这个框架,因为它耦合松散,而且代码会定期进行审计。我找到了 Zend 提供的工具 Apigility,它似乎很容易实现。但是有一件事没有直接涉及,我什至不确定 Apigility 是否对我有意义:

我需要一个用户角色概念,其中一些用户只能查看和修改他们自己创建的资源,而其他用户可以查看和修改所有资源。还有一些端点(控制器)只对某些用户可用。

ACL模块可以实现对某些端点的权限管理,但我不知道如何实现对资源的过滤。

4

1 回答 1

1

您将需要采取一些策略来完成所有这些工作。

可以通过扩展 zf-mvc-auth 提供的默认授权侦听器(或添加其他侦听器)来处理您的端点访问控制。这应该允许您控制是否可以看到端点。

至于对资源的访问控制(过滤),您可能需要将某种性质的 Authorization 容器注入到您的资源服务中,以在那里处理您的授权逻辑。看看 zfc-rbac 食谱可能是什么样子(https://github.com/ZF-Commons/zfc-rbac/blob/master/docs/07.%20Cookbook.md#a-real-world -application-part-4---checking-permissions-in-the-view

于 2015-04-08T23:10:22.677 回答