加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

(03)权限配置管理

发布时间:2020-12-17 01:25:11 所属栏目:安全 来源:网络整理
导读:做一个软件很容易,但是能做好不容易,能坚持不懈,更不容易,这是我安慰自己的理念。 我们不要带头制造电子垃圾,做一个是一个是我追求的目标,先看一个后台权限配置管理界面效果吧。 ? 哪个区域有什么功能,我就不罗嗦了。 权限范围: ?? 例如,1。你是财
做一个软件很容易,但是能做好不容易,能坚持不懈,更不容易,这是我安慰自己的理念。
我们不要带头制造电子垃圾,做一个是一个是我追求的目标,先看一个后台权限配置管理界面效果吧。

?
哪个区域有什么功能,我就不罗嗦了。

权限范围:
?? 例如,1。你是财务主管,你可能可以管理整个公司及分公司的财务数据、财务业务。
?? 但是你没有权利管理整个公司及分公司的人事数据、人事业务。
?? 2。也没有必要对所有的权限都设置权限范围,那设置的人要累死了,写程序也可能烦死了。
?? 3。若需要业务领域划分及数据级的权限设置,要设置权限范围,大部分情况下对模块设置权限就可以了。

注意事项:
?? 1。编号不能重复,因为判断权限前台是通过编号来判断权限的。
?? 2。不能批量编辑,使用起来会很不方便,所以黄色区域为可批量编辑区域。
?? 3。列表及表格中的数据,应该能灵活排序,可以按用户的需要进行排序,这也绝对前台配置时权限时的排序顺序。
?? 4。可以批量删除,批量移动,树型结构能进行拖动,这样维护规划权限时都会比较得心应手。
?? 5。当然在开发阶段可以给多个开发人员添加删除修改的权限,将已经确定下来的权限可以通过 Administrator设置为
?????? 不可编辑,不可修改,这样防止其他开发人员不小心修改或不小心给你删除了,特别是测试人员,把你辛苦设置的
?????? 权限数据给删除了,你会痛苦得吃不下饭

?? 6。当然你可以把权限配置管理模块也可以细分很多明细的权限,但是我个人认为若那样就是过渡设计了,没多大必要,
?????? 这个功能模块本来就是给后台配置管理员及开发人员用的,不应该给最终客户用的。
?? 7。当然想做一个产品,必须要支持多语言功能,应该能有简体中文版、繁体中文版、英文版、日本版等。
?? 8。删除节点时,若有子节点,应该先删除子节点,然后才能删除父节点,这只是一个删除策略。
?? 9。修改页面上的数据后,未保存关闭表单,应该提醒是否保存数据,否则人家不是白修改了?
?10。若权限进行了细分,没有权限的按钮应该变成灰色的。
?11。若没有数据可排序,相应的排序按钮应该变成灰色的。
?12。若应用程序从 MDI 主页面统一排序控制,那此页面上的排序可以隐藏并且,依据页面的相应权限控制 MDI主页面的排序按钮。
?13。用户应该适当通过标准接口定义,控制此页面,为 MDI主页 调用提供接口。
?14。此页面应该能在 Local本地模式运行 Remoting 远程模式运行?WebService 模式运行下都正常。
?15。按钮的大小,布局应该满足统一的风格,我最不喜欢页面布局乱八七糟的页面,连按钮都对不起的,我就想吐。
?16。平常我们开发程序的人脑海里马上会想到把权限例如划分为:
Access?访问权限、Add?新增权限、Edit?编辑权限、View?浏览权限、
Delete?删除权限、Search?查询权限、Import?导入权限、Export?导出权限、
Print?打印权限、Auditing?审核权限、Admin?管理权限、Config?配置权限、
UpLoad?上传权限、DownLoad?下载权限

但是你无论固定划分几个权限,都是无法满足实际应用的权限划分,实际应用中会有N多跟业务相关的权限、打个比方
还有申请采购、盘点、驳回订单、客户管理等等N多权限,你也不大可能说,要预留2个权限自定义权限搞定,那是办不
到的,除非业务逻辑超级简单、软件规模小或者权限要求不复杂,所以权限设置就应该是自由设定的,想怎么划分就怎么
划分,是开发人员按照实际项目需要进行灵活配置。应该从业务的需要定位权限划分,假如你第一步就做错了,那我是
不大认可固定划分权限的设计方式。
?17。把权限设置,定义成数型结构的,相应的写程序的量会增加4倍以上吧,我以前是一个列表型的,但是实际应用中
列表型的权限非常不好用,进行设置时,需要用户点很多次。用户是不管你开发的量大,还是开发的复杂度高,用户追求
的目标是好用。
??


软件是否好用怎么衡量?
? 其实很简单,我认为:
? 1。是否经常有Bug出来,别经不起折腾,操作几下就挂掉了,就算挂掉了,也别把整个程序给挂掉,那太没面子了。
? 2。自己从头操作一下看看,把数据都清除掉,然后从头输入一次看看,是否很好用?可能你发现连自己操作都受不了,要跳楼了。
? 3。给别人讲解一下,给别人演示看看,是否能顺畅的跑一圈,很多时候,能发现自己犯了很多错误。
? 4。让测试人员用用看看,让你的同事用用看看,估计很多问题都暴露出来了。
? 5。换一个环境,在别人的电脑上,另一个版本的Windows,分辨率的电脑上用用看,是否好用?你也可能会发现一大堆问题。
? 6。让最终客户用用看,是否好用?会发现很多点点滴滴,这里需要改进那里改进。
? 7。过个1年半栽再用用看,是否好用?别忘记了,这是你的孩子,你要经常去改进、维护、与时俱进,孩子有一天会长大成才的。

目前美中不足的有:
?? 1。树型结构的拖动功能,没有windows资源管理器那么好用,当数据超过1个屏幕时,拖动节点时不方便,屏幕不会
自动滚动,若谁知道如何改进,我愿意支付辛苦费。
?? 2。还未做好打印导出功能,导入功能,我觉得一个比较好的软件,应该能支持导入导出功能,当然打印功能是必不可少的。
?? 3。还没有彻底多语言化,只是用英文版和繁体中文版进行了测试。
?? 4。精力有限,B/S 前台还在开发中。
将权限管理、工作流管理做到我能力的极致,一个人只能做好那么很少的几件事情。
Tag标签: 通用权限设计

posted on 2008-06-23 21:26 不仅仅是通用权限设计 阅读(2329) 评论(10) 编辑 收藏

评论

#1楼   回复  引用  查看  ?? 支持

2008-06-24 16:38 | 笑疯^_^? ?????

#2楼  回复 引用 ??

既然你想研究权限,建议看看fastspring框架带的那个例子看看,里面的那个权限也不错,好像比你细,感觉更好已经是万能的了
2008-08-30 00:05 | Gavin King 的兄弟[未注册用户]

#3楼  回复 引用 查看 ??

感觉有点乱,访问、编辑、删除、打印都是针对一个业务或对象的动作,而后面的用户、部门、角色都是业务或对象,我一般都叫它们为资源,动作是针对资源的,判断一个用户的当前权限是要看他对什么资源进行什么样的操作是否可以。
2008-10-22 15:34 | 吴峰? ?????

#4楼[楼主]  回复 引用 查看 ??

吴峰 说得有道理,以上抓图的确是有你所说的问题,我的设计跟你所讲的是一样的,没有冲突,抓图有问题。
2008-10-22 17:23 | 吉日嘎拉? ?????

#5楼  回复 引用 查看 ??

当数据超过1个屏幕时,拖动节点时不方便,屏幕不会
自动滚动,

拖动的时候启动一个timer,判断鼠标是否移在滚动区域的两端,如果是则发送个滚动消息.
2009-01-12 13:26 | 无常? ?????

#6楼  回复 引用 ??

当然你可以把权限配置管理模块也可以细分很多明细的权限,但是我个人认为若那样就是过渡设计了,没多大必要,
这个功能模块本来就是给后台配置管理员及开发人员用的,不应该给最终客户用的。

后台配置管理员 是谁,不是最终用户之一吗?

我可以告诉你,我们的权限设置是 分系统,每个系统有管理员,这个管理员一般是对应部门的人员,比如财务系统是财务经理等.
2009-02-07 17:10 | fafa[未注册用户]

#7楼[楼主]  回复 引用 查看 ??

fafa ,请仔细看第一个图,这个是满足任何多个系统的,
分几个系统都可以,你仔细看看,体会一下,我的权限是自由
划分的,你分几个公司,每个公司划分几个系统,每个系统划
分几个模块,你想怎么配置就怎么配置,任你配置的。
2009-02-07 17:25 | 吉日嘎拉? ?????

#8楼  回复 引用 ??

最近也在研究权限有关的,看到了这个,有些思路了,但是有个问题,就是:
权限(具体的功能权限)是在开发阶段就确定了,还是在项目交付后才确定?对于交付后,新加的权限,系统能控制吗?
2009-05-09 22:54 | year[未注册用户]

#9楼  回复 引用 ??

看来你的文章想探讨下 我加你qq了 我的qq是76383190我开发了个ajax的权限 系统cjApp权限系统设计说明文档权限可以分为 2个部分 (粗粒度的 操作权限) 和 (细粒度的数据权限)粗粒度的操作权限 我们能够做成通用的 基于RBAC的 权限管理系统操作权限一般是放在MVC的controller层,作为插件来控制是否有操作权限。细粒度的数据权限 所谓数据权限是表示,在系统中即使角色相同,都有操作权限,但业务操作时受风险、额度、销售区域等业务属性限制。如销售人员可以看到自己的销售列表,而销售经理可以看到其管辖范围内的销售人员的销售列表,而高级销售经理能看到其下辖的销售经理的销售列表,更进一步,只看金额超过1000万的单子,小于1000万 的单子不看。如销售人员是销售产品的,但由于产品属性的不同,如产品属性中销售地区在“苏杭地区”,则北京地区的销售人员则不能销售。如产品属性中风险属 性高,则销售人员的级别也要求高,则低级别的销售人员则不能销售该产品;进一步来讲,随着时间或形势的发展,该种产品的风险并没有那么大,低级别的销售人 员也可以销售;或者该种产品低级别的销售人员销售该种产品的金额小于100w,而高级别的人员销售100w等等。数据权限更多地是和业务逻辑纠缠在一起,因此数据权限可以作为插件放在业务层(Model),更优雅的设计是以模板模式在业务缺省实现基类中,作为过滤。cjApp权限系统 采用粗力度设计(RBAC模型)用户 和 角色 是 多对多关系角色和 许可 是 多对多关系模块 和 许可 是 1对多关系拦截方式分 url路径拦截 和 方法拦截 默认情况下 url 和 方法都不能访问 只有授权的用户能够访问

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读