H3手册 专题
您的位置:H3手册 > H3手册专题 > 权限认证
权限认证
作者:Aliot    发布时间:2020-04-11

H3权限认证机制采用了AOP(面向切面)的方式

实现授权和认证需要做2方面的工作:


1、在usr/auth下建立认证器,实现Lib\IBase\IAuth接口

示例:实现一个叫AdminAuth的认证器


<?php

namespace Auth;
use Lib;

class AdminAuth implements Lib\IBase\IAuth
{
	static function valid($act)
	{
		//验证是否通过,返回值是true或false,true则执行allow(),false则执行deny()
	}
	
	static function allow()
	{
		//TODO:认证通过,继续下一步想要的操作
	}

	static function deny()
	{
		//TODO:认证失败跳转到其他页面
	}


}

?>
2、配置usr目录下的auth.ini认证器配置文件


示例:


;说明:认证器配置文件
;请严格遵循如下格式进行配置:
;auth['area/controller/action'] = "Lib\IBase\IAuth接口类"
;*号代表通配符,键值要求必须是3元组格式(*/*/*)

auth['Admin/*/*'] = "AdminAuth"
上述示例的意思是使用 AdminAuth认证器对area Admin下的所有控制器和方法进行授权认证检测


其他示例:

auth['Admin/Home/*'] //作用范围是area Admin下的控制器Home下的所有action

auth['Admin/Home/Index'] //作用范围仅仅针对Index这个action


优先级说明:

按如下顺序进行串行认证

action->controller->area

任何的中断跳转处理都会导致后续的认证器放弃工作





网站声明:
本站部分内容来自网络,如您发现本站内容
侵害到您的利益,请联系本站管理员处理。
联系站长
373515719@qq.com
关于本站:
编程参考手册