boa框架开发手册v5.2

权限验证

权限表位于临时目录/config/下,支持按组定义多个权限表,每个表支持allow(允许)和deny(拒绝)两项

  • perm.php:默认权限表
  • perm-*.php:组权限表,*为组标识

实际中可以使用数据库来管理权限,使用程序来生成权限表

权限定义

每个权限项(模块.控制器.动作)支持任意位置使用通配符*,省略的节点均代表*


	'allow' => [
		'*'
	],
	'deny' => [
		'admin.*.do_*'
	]

	'allow' => [
		'home.*',
		'news.*',
		'admin.index'
	]

出于性能考虑,尽可能的使用通配符*,减少定义项目

权限验证

验证时将当前权限(模块.控制器.动作)与指定组或默认权限表进行校验


	boa::permission()->check(); //config/perm.php
	boa::permission()->check('admin'); //config/perm-admin.php
	boa::permission()->check(1); //config/perm-1.php

拒绝优先级大于允许