关于权限的设置

liulei68211 2016-09-14 03:39:27
在管理信息的软件中,需要不同的用户查找的时候显示不同的内容,该怎样实现?
...全文
227 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
秋的红果实 2016-09-18
  • 打赏
  • 举报
回复
用户权限可以由超级管理员授予 用户只能访问被授予的资源
q1092123049 2016-09-18
  • 打赏
  • 举报
回复
在数据库中,给人员表设置一个权限字段, 每个人员都有自己的权限。 在业务逻辑中加上判断,针对不同用户,有权限就显示,没有就隐藏。
ok-go 2016-09-17
  • 打赏
  • 举报
回复
最简单的就直接写死, 看看 有多少种权限类型, 如果等于 权限1 (组长):查询的时候 加上条件 where 组=销售1组 ---可以看到 组1所有人 权限2 (职员):查询的时候 加上条件 where 用户=姓名 ---只能可以看到 自己 其它自己看着写喽
software_artisan 2016-09-16
  • 打赏
  • 举报
回复
引用 3 楼 zbdzjx 的回复:
是要做横向的筛选(100条记录只能看其中几十条)?还是纵向的筛选(30列只能看其中几列)? 横向的筛选,通常是针对某一列或是某几列进行限定。像我们之前写的软件,可以设定这个人看哪些部门的数据,那就在权限设定时,显示全部部门,然后去勾选哪些部门可以看。代码中就直接拼SQL语句中的Where条件了。 纵向的筛选,就麻烦一点了。 简单的写法,像我们之前写的软件,有些界面、有些人不能看到单价和金额信息,那就在权限设定时,增加一项“可看金额”,如果勾选了,在界面显示时就显示单价和金额信息;如果没勾选,界面就不显示。 麻烦的写法,就要在权限设定中,列出全部需要限定的列。界面显示时,一列一列的判断。
数据列也是资源,只要是可以定义的资源,就可以授权。授权和鉴权反正都是那么回事,真正复杂的是定义资源和组织资源。例如你举的例子,应该算是一种比较特殊的权限应用场景。这里面麻烦的是界面的表格不是根据数据库中定义的资源生成的,所以一旦表格变了,定义就失效了。譬如原来列名是『单价』,权限里面定义的也是『单价』,于是权限可以生效,但如果哪天有人把表格中『单价』列改成『价格』,显示不会有问题,但权限就失效了。
xuzuning 2016-09-15
  • 打赏
  • 举报
回复
首先你要对全部可提供的数据进行授权 这样用户就可看到符合其权限的数据了 权限管理是一个极其简单而又极其繁琐的事情
  • 打赏
  • 举报
回复
你在分析用户需求方面付出了多少努力,其它搞技术的人就会给你多少解决方案。你花多少努力先去特别明细地表达用户需求、做了多少功课,是简单地抄还是真的在找解决方案,别人都能看出来。
  • 打赏
  • 举报
回复
引用 2 楼 liulei68211 的回复:
具体的说,我现在做一个项目信息的管理软件,包括了所做项目时签订的采购合同和销售合同的信息(合同的基本内容,回款的信息记录,采购付款的信息记录,发票信息等,,收入支出的汇总等),现在想做的是:通过设置让不同的人访问不同的数据
空洞地讲“通过设置让不同人有不同权限”根本不具有可操作性,这是空话。假设你根本不懂编程,你手中就是一堆A4纸的“数据”,你怎么“让不同权限的人访问不同的A4纸”?你应该站在一个完全不懂变成的人角度先自己写出最高层次的业务逻辑,然后才纠结到有关软件编程领域的概念。如果一开始就纠结一堆编程概念,你除了抄别人,就没有自己的设计了,也就很难真正满足用户需求了。
xiaha3 2016-09-14
  • 打赏
  • 举报
回复
完善的权限相当复杂 有权限,比如有组织机构,必然有相关管理岗位 你先要把管理身份定好, 先说一个简单的情况,就是单一资源,功能仅限于浏览,各个用户的权限是死的,比较好写,直接根据用户管理身份进行筛选,单独做筛选函数就好。 再说下比较复杂的权限管理,功能权限,时间权限还有资源范围权限是三个基本权限,如果权限动态分配就是再运行时进行权限划分,就需要C# Lambda Expression或者c# eval,(参考http://blog.csdn.net/ghostbear/article/details/7764510),考虑效率有时候还要直接拼接sql等直接存储层的数据操作,有必要的话需要实现类似ACL的东西来细化控制 进一步讲,就是权限的分配和继承,比如一个部门的领导可以对下面进行分配资源和权限,那么只能是他权限内的。 总之,权限可以复杂到无限大,所以你要和大家明确你想要的效果,大家才能进一步给你答案
维秀斯丢丢 2016-09-14
  • 打赏
  • 举报
回复
http://www.cnblogs.com/JamesLi2015/p/4746765.html
维秀斯丢丢 2016-09-14
  • 打赏
  • 举报
回复
权限管理本身也是相对比较复杂的一个环节,但必不可少,都很成熟啦。
维秀斯丢丢 2016-09-14
  • 打赏
  • 举报
回复
看你用的什么技术。 不同权限的用户的菜单不一样,那么加载主页的时候,就先获取用户可以访问的菜单列表。如果是一个菜单下的不同按钮,那就加判断,是否有这个权限。有才显示这个按钮。
zbdzjx 2016-09-14
  • 打赏
  • 举报
回复
是要做横向的筛选(100条记录只能看其中几十条)?还是纵向的筛选(30列只能看其中几列)? 横向的筛选,通常是针对某一列或是某几列进行限定。像我们之前写的软件,可以设定这个人看哪些部门的数据,那就在权限设定时,显示全部部门,然后去勾选哪些部门可以看。代码中就直接拼SQL语句中的Where条件了。 纵向的筛选,就麻烦一点了。 简单的写法,像我们之前写的软件,有些界面、有些人不能看到单价和金额信息,那就在权限设定时,增加一项“可看金额”,如果勾选了,在界面显示时就显示单价和金额信息;如果没勾选,界面就不显示。 麻烦的写法,就要在权限设定中,列出全部需要限定的列。界面显示时,一列一列的判断。
liulei68211 2016-09-14
  • 打赏
  • 举报
回复
具体的说,我现在做一个项目信息的管理软件,包括了所做项目时签订的采购合同和销售合同的信息(合同的基本内容,回款的信息记录,采购付款的信息记录,发票信息等,,收入支出的汇总等),现在想做的是:通过设置让不同的人访问不同的数据
shoppo0505 2016-09-14
  • 打赏
  • 举报
回复
根据权限啊。权限数据保存在数据库中。 你这个问题太笼统,没法回答

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧