标签:没有 erb 适用于 通过 很多 version source 常用 环境
权限管理框架
属于系统安全的范畴,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户可以访问而且只能访问自己被授权的资源
包括用户身份认证和授权两部分,简称认证授权
1.身份认证
判断一个用户是否为合法用户的处理过程;
最常用的简单身份认证方式是系统通过核对用户输入的用户名和口令,看其是否与系统中存储的该用户的用户名和口令一致,来判断用户身份是否正确
2.授权管理
即访问控制,控制谁能访问哪些资源;
体进行身份认证后需要分配权限方可访问系统的资源,对于某些资源没有权限是无法访问的
3.权限控制
1)基于角色
RBAC基于角色的访问控制(Role-Based Access Control)是以角色为中心进行访问控制,比如:主体的角色为总经理可以查询企业运营报表,查询员工工资信息等,访问控制流程如下:
2)基于资源
RBAC基于资源的访问控制(Resource-Based Access Control)是以资源为中心进行访问控制,比如:主体必须具有查询工资权限才可以查询员工工资信息等,访问控制流程如下:
上图中的判断逻辑代码可以理解为:
if(主体.hasPermission("查询工资权限标识")){
查询工资
}
3)基于url拦截
企业中常用的权限管理方法,实现思路是:将系统操作的每个url配置在权限表中,将权限对应到角色,将角色分配给用户,用户访问系统功能通过Filter进行过虑,过虑器获取到用户访问的url,只要访问的url是用户分配角色中的url则放行继续访问
4.常见的权限框架
1)Shiro 框架
Java的一个安全框架;
对比Spring Security,可能没有Spring Security做的功能强大
特点:
2)Spring Security
一个轻量级的安全框架,它确保基于Spring的应用程序提供身份验证和授权支持
基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架;
提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spring IoC,DI(控制反转Inversion of Control ,DI:Dependency Injection 依赖注入)和AOP(面向切面编程)功能,为应用系统提供声明式的安全访问控制功能,减少了为企业系统安全控制编写大量重复代码的工作;
“认证”是为用户建立一个其声明的角色的过程,这个角色可以一个用户、一个设备或者一个系统;
“验证”指的是一个用户在你的应用中能够执行某个操作,在到达授权判断之前,角色已经在身份认证过程中建立了
3.Shiro和Spring Security比较
标签:没有 erb 适用于 通过 很多 version source 常用 环境
原文地址:https://www.cnblogs.com/dxjx/p/12573789.html