基于角色访问控制的UML 表示04

在静态视图中,UA 关系和PA 关系用多对多的"assinged to"关系表示。用户-会话关系看作一个用户可以建立一个或多个会话,在常数的会话生命期中每个会话激活至少一个或多个角色。角色继承关系表示为一个角色inherits 另外的角色。

4.2 功能视图

本文中,我们也作了更具体的功能需求来表示在图2 中没有清晰定义的、RBAC 系统应该提供的功能。使用用例模型描述的功能视图如图4 所示,有三个执行者:安全管理员(security administrator)、用户(user)和角色领域工程师(role domain engineer)。角色领域工程师从可能组织一组权限的应用系统中抽取出基本的知识,构造角色层次和指定约束。安全管理员管理基于角色的系统,指派用户到角色和指派权限到角色。用户是真实的人或外系统,可以建立会话、请求权限许可和关闭会话。

图4 用例模型

下面是建立会话(session establishing)用例的简要叙述:

用例:建立会话

执行者:用户

前置条件:系统空闲

说明:用户提交信息以建立会话;系统显示用户可以激活的角色;用户选择要激活的角色;系统以用户所选择的角色激活一个会话。

在以所选择角色建立会话之后,用户可能需要访问需要基于角色信息的授权过程的系统资源。换句话说,和角色相关的权限应该得到系统的许可。以下是"权限许可"用例的简要描述:

用例:权限许可

执行者:用户

前置条件:用户的会话已经激活

说明:用户提交权限许可信息,系统通知用户权限是否许可。

我们也可以考虑其他情况。例如,我们可能需要额外的功能来让安全管理员监视会话或让用户查询自己的状态。

4.3 动态视图

在动态视图中,用例被精化以显示参与用例的对象之间的交互。"建立会话"的协作图如图5 所示。

相关推荐
甲枫叶5 天前
【claude热点资讯】Claude Code 更新:手机遥控电脑开发,Remote Control 功能上线
java·人工智能·智能手机·产品经理·ai编程
Dr.AE6 天前
OpenClaw 产品分析报告
人工智能·自动化·产品经理
甲枫叶6 天前
【claude+weelinking产品经理系列16】数据可视化——用图表讲述产品数据的故事
java·人工智能·python·信息可视化·产品经理·ai编程
Ruannn(努力版)7 天前
产品经理 PRD需求文档
产品经理
甲枫叶7 天前
【claude+weelinking产品经理系列15】UI/UX 打磨——产品经理的审美终于能自己实现
java·人工智能·python·ui·产品经理·ai编程·ux
rolt8 天前
二十四年前在UMLChina谈本体论-James Odell
产品经理·架构师·uml·本体论·palantir
甲枫叶9 天前
【claude产品经理系列13】核心功能实现——需求的增删改查全流程
java·前端·人工智能·python·产品经理·ai编程
产品经理邹继强9 天前
需求优先级之争可以休矣
microsoft·产品经理
实战产品说9 天前
2026出海产品的机会与挑战
大数据·人工智能·产品运营·产品经理
甲枫叶10 天前
【claude产品经理系列11】实现后端接口——数据在背后如何流动
java·数据库·人工智能·产品经理·ai编程·visual studio code