为什么需要权限管理

一、安全性:误操作、人为破坏、数据泄露等等。

  我们都是用过MySQL,在企业里我们都是用过MySQL。通常都是使用一个单独的账户,这个账户只能对指定数据库进行增删改查操作,同时会限定ip。平时开发人员连接MySQL也要使用一个单独的账户,这个账户只能做查询操作。而DBA作为数据库的管理员,有可以操作数据库所有的权限,那么为什么要做这样的权限区分那。首先开发人员的只读账户,许多开发人员拿到账户后都会很自然的拿到客户端去连接账户,坚持下账户是否可用,客户端可以轻易的修改数据,当然了这种操作可能误碰了下鼠标,开发人员账户只读是必须的。我们换一个角度,有时因为代码bug,数据库里的数据是错的,如果有开发人员有更新权限的话,那么这个时候就会有很多人选择直接到数据库里把数据给改了,这种操作会出现的很频繁,如果这种bug比较严重,这种操作很有可能给之后确认问题的原因带来麻烦,因为数据和代码已经对不上了,如果改错了那就更麻烦,因此实际中我们遇到这种问题一般都会让专门应对这种问题的专门负责人去执行,同时再给相关人员通知。再换个角度,开发人员拿到账户后,都需要把它存下来,而存下来的东西,都很容易被其他人拿到,这种情况下,开发人员的账户只开通查询的权限,是非常有必要的。接下来我们说一下项目里的账户,因为项目里的使用,但是这个账户很容易被看到代码的人拿到因此,通常会限定只能在指定的服务器端去执行。再举个例子Linux的root用户与普通用户,登到服务器的可能是管理员也可能是普通用户,管理员可以在服务器上安装一些软件,监控服务器的运行状态,删除一些没用的文件与目录等,而普通用户登录到服务器上,比如开发人员可能只是查看一下自己部署的服务的一些logo,看下代码执行的情况,这个时候给开发人员太多的权限就没有必要,假如一个不熟悉命令的开发人员,在服务器上执行了一个删除命令,本来只是想删除一个普通的目录,结果只是少了一个空格把所有的目录都删除了,瞬间服务器就没法使用了这个错误是致命的,因此普通用户能执行的命令是要受限制的,能访问的文件和目录同样要受限制。

二、数据隔离:不同的权限能看到及操作不同的数据

  比如不同部门的领导能看到自己部门手上员工信息,别的部门的就看不到了,比如一个员工请假,他的领导能看到给审批就可以了,其他领导没必要看到,再比如公司财务部门的人看到财务部门的数据,其他部门就不能随便看到,公司里的每个人的工资是保密的,只能被财务和指定角色的人查看。

三、明确职责:运营、客服等不同角色,leader和dev等不同级别

  比如对于电商后台系统,拿客服和运营来说,功能有相似的也有不同的,先说相似的功能比如同是订单查询的功能,客服是能查到所有用户的订单,因为要用户要反馈的任何一个订单号,客服都需要查一下订单的情况,并让相关人员处理,而运营只需要查到自己所负责那一部分店铺产生的订单就可以了。不同的功能,客服是可以看到客户买完东西一些反馈情况运营就看不到,相反运营能看到店铺的业绩情况客服就看不到。

 

刚认真的接触这方面,有什么不对的请各位大牛帮忙指出,Thanks♪(・ω・)ノ 

 

posted @ 2018-05-08 10:27  丿love丶暗影  Views(1254)  Comments(0Edit  收藏  举报