12、RABAC:以角色为中心的基于属性的访问控制

RABAC:以角色为中心的基于属性的访问控制

1. 引言与动机

基于角色的访问控制(RBAC)是一种商业上占主导地位且广泛使用的访问控制模型。在该模型中,访问权限被分配给角色,角色再分配给用户,并且角色可以根据系统需求的变化进行创建、修改或禁用。

然而,传统的RBAC在处理细粒度访问控制时效率低下。为了实现细粒度授权,往往需要大幅增加具有略有不同权限集的不同角色数量,这会导致角色爆炸问题。例如在医院场景中,医生只能查看自己患者的记录,按照NIST RBAC模型,需要为每个患者分别定义一个医生角色,这使得角色数量急剧增加,且这些角色大多共享相同的权限。

为了解决这些问题,研究界提出了多种对RBAC的扩展。最近,NIST宣布了一项将角色与属性集成的倡议,旨在统一和标准化各种RBAC扩展,结合RBAC和基于属性的访问控制(ABAC)的优势。Kuhn等人确定了三种将属性集成到RBAC中的替代方案:
- 动态角色 :使用用户和上下文属性动态地为用户分配角色,类似于基于属性的用户 - 角色分配,但无法解决角色 - 权限分配爆炸的问题。
- 以属性为中心 :将角色视为用户的另一个属性,这种方法在很大程度上放弃了RBAC已被充分证明和成熟的优势。
- 以角色为中心 :每个会话中可用的最大权限由激活的角色决定,并可根据属性进一步减少,但目前缺乏相关的正式模型。

本文提出了以角色为中心的基于属性的访问控制(RABAC)模型,该模型通过权限过滤策略扩展了NIST RBAC模型,克服了角色爆炸问题,同时与NIST RBAC模型无缝集成。 </

内容概要:本文以一款电商类Android应用为案例,系统讲解了在Android Studio环境下进行性能优化的全过程。文章首先分析了常见的性能问题,如卡顿、内存泄漏和启动缓慢,并深入探讨其成因;随后介绍了Android Studio提供的三大性能分析工具——CPU Profiler、Memory Profiler和Network Profiler的使用方法;接着通过实际项目,详细展示了从代码、布局、内存到图片四个维度的具体优化措施,包括异步处理网络请求、算法优化、使用ConstraintLayout减少布局层级、修复内存泄漏、图片压缩与缓存等;最后通过启动时间、帧率和内存占用的数据对比,验证了优化效果显著,应用启动时间缩短60%,帧率提升至接近60fps,内存占用明显下降并趋于稳定。; 适合人群:具备一定Android开发经验,熟悉基本组件和Java/Kotlin语言,工作1-3年的移动端研发人员。; 使用场景及目标:①学习如何使用Android Studio内置性能工具定位卡顿、内存泄漏和启动慢等问题;②掌握从代码、布局、内存、图片等方面进行综合性能优化的实战方法;③提升应用用户体验,增强应用稳定性与竞争力。; 阅读建议:此资源以真实项目为背景,强调理论与实践结合,建议读者边阅读边动手复现文中提到的工具使用和优化代码,并结合自身项目进行性能检测与调优,深入理解每项优化背后的原理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值