我正在寻求帮助,以了解RBAC在运行时如何工作或者当用户想要执行操作时消息调用的序列图。到目前为止,我无法确定任何详细说明的文档,任何帮助都会非常感激。
在最基本的层面上,我的理解是RBAC验证对返回true或false的对象执行操作的权限。如果为true,则可以使用相关业务对象,DAO的实现以及在适用的情况下更新记录的位置继续进程。
folloiwng RBAC模型包含角色,权限,对象和操作,但这与运行时用户操作有何关系?
https://www.mind-it.info/2010/01/09/nist-rbac-data-model/
为了确定RBAC模型如何为网站应用程序工作,我已经为访客和客户用户概述了一些操作,其中包含许多问题以确定事件的顺序。
1。访客用户
操作1 - 访客用户是指未登录但可以访问主页并注册用户帐户的用户。
当用户访问网站页面时,首先会创建“会话”吗?
当用户访问具有'createAccount'权限的网站页面以创建用户记录时,是否分配了访客'角色'?
操作2 - 如果访客选择“注册”,则会打开注册表单。用户输入注册详细信息并单击“提交”。
单击注册按钮或提交表单时是否检查了用户的“角色权限”?
此时是否创建了'会话',还是使用了上面的操作1?
'session'检查对register的访问权限,这将返回'true'/'false'。 'true'的结果允许创建用户帐户以继续或在'false'时显示权限被拒绝错误。
到目前为止,它只是创建一个'会话',分配'角色'和'验证',如果可以完成该操作。如果动作可以完成,下一个调用是对业务对象验证注册详细信息,调用userDAO并输入用户记录)?
完成此操作后,会话是否会删除与来宾相关的活动角色,并将新的活动客户角色添加到会话中?
2。客户用户
行动3 - cutomer用户是指可以登录,购买商品,查看购买商品的用户。
当用户访问网站页面或完成显示特定用户主页的日志时,首先会创建“会话”吗?
验证过程是否与RBAC分开,在RBAC中根据用户表的信息验证用户名和密码?这是在创建“会话”还是分配“角色”之前发生的?
当用户选择登录或用户输入并提交用户名和密码时,是否分配了客户“角色”?
当用户登录时,客户端可以执行许多功能。是否应使用角色权限来确定在此主页上启用的操作?
是否在提交操作中,例如选择一个视图链接或提交一个表格,检查访问权限是否应该发生?
会话什么时候终止? 何时删除了活动角色?