srayner / civaccess
ZF2授权模块
Requires
- php: >=5.3.3
- zendframework/zendframework: 2.5.1
- zf-commons/zfc-base: 0.1.2
This package is not auto-updated.
Last update: 2024-09-11 23:58:59 UTC
README
CivAccess
CivAccess是一个基于Zend Framework 2的授权模块。它基于Zend\Permission\Acl组件构建。旨在易于使用和理解。授权涵盖了身份可以访问的资源。它不涉及身份验证,即通过一组凭证(如使用用户名和密码登录)来识别某人的过程。
应该与此模块一起使用另一个独立的授权模块。ZfcUser模块是一个很好的例子。
持久层被抽象出来,不依赖于任何特定的数据库供应商。您应该能够使用任何具有PHP PDO驱动的数据库。此模块不依赖于任何特定的身份验证模块。但是,它需要一个可以提供通过getIdentity()方法获取的身份对象的身份验证服务,并且身份对象应提供getId()方法来检索标识符。
角色代表用户和组。因为Zend\Permission\Acl支持多重继承,用户可以属于多个组。角色及其父组存储在一个简单的数据库表中。因此,您可以使用此模块来管理它们,或者使用您自己的模块来操作数据库表。有一些内置的角色,如;访客、用户和管理员,不应删除,但您也可以添加您自己的角色。
资源映射到控制器,权限映射到操作。这使事物简单易懂且易于管理。
规则定义了特定角色对资源上的哪些权限。规则也存储在数据库表中。再次使用此模块来管理它们,或者使用您自己的模块。
安装
要将此模块安装到您的ZF2应用程序中;
- 在您的vendor文件夹内创建一个空的CivAccess文件夹。
- 将此git仓库克隆到您的新的CivAccess文件夹中。
- 通过在您的应用程序配置文件中的'Modules'键下添加一个'CivAccess'条目来激活新模块。
安装后
如果您使用的是MySQL或Firebird数据库,您可以在\data文件夹中找到相应的sql脚本并执行。这将创建数据库中的两个表来存储角色和访问规则。
如果您使用的是zfcUser模块进行身份验证并且尚未创建您的用户数据库表,您可以执行相关..._zfcuser.sql文件。这将创建用户表并将访问规则插入为访客和用户角色以访问标准的zfcuser控制器和操作。
### 创建初始管理员用户 要开始管理系统,您至少需要分配一个具有管理员角色的用户。因为我们还没有管理员用户,这需要通过手动将记录插入到access_role数据库表中来完成。
为此,请在您的数据库上执行create_admin.sql(在data文件夹中找到),将user_id值替换为您的用户ID。