系统权限控制体系

本文探讨了系统权限控制的本质,包括访问控制的两个主要任务。介绍了DAC、MAC、IBAC、RBAC和ABAC等理论模型,以及在Java中如Spring Security、Apache Shiro等常用框架。同时,概述了权限系统从JAAS到分布式SSO和统一登录的演变历史。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在 Web 应用开发中,安全一直是非常重要的一个方面。安全虽然属于应用的非功能性需求,但是应该在应用开发的初期就考虑进来。比如我们开放的功能页面需要登录授权之后才能访问,一些功能需要具备特定权限的人才能操作;再比如我们开放了数据API接口,如果不做访问控制,那么任何人都可以调用,当被不法分子操作时将给我们带来巨大的麻烦。那么在Java 整个体系中访问控制是否有一套理论技术支撑呢,我们是否可以做一个通用性的访问控制系统来完成分布式系统架构下的复杂的权限控制?接下来会一一介绍。

访问控制的本质:

系统权限控制 本质上是访问控制(Access Control),那访问控制的本质又是什么呢?其实就是合法的访问受保护的资源,通俗的解释就是“【谁】是否有可以对某个【资源】进行某种【操作】”;可以看出访问控制的三个基本要素:主体(请求实体)、客体(资源实体)、控制策略(属性集合);

访问控制需要完成的两个任务:

识别和确认访问系统的用户;
决定该用户可以对某一系统资源进行何种类型的访问;

访问控制理论模型:

  • DAC&MAC模型
    • DAC:自主访问控制;
    • MAC:强制访问控制,一般用于多级安全军事系统;
  • IBAC模型:
    • 基于身份的访问控制模型
    • 举例:登录验证
    • 比如Java中使用cookie、sess
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值