系统开发中权限控制的重要性
一、为什么要做权限控制?
每个企业都有自己的分工协作体系;不同岗位的员工,负责不同的工作内容;不属于岗位职责范围内的事情,员工通常不具有参与权和知情权。
如果每个岗位的员工都可以参与所有的工作、看到所有的信息,就会给企业的分工协作体系造成巨大冲击,导致内部管理混乱。更极端的情况是,员工利用自己“无限制的参与权和知情权”,进行违法的牟利活动,给企业带来致命的损害。
企业需要通过对员工在系统中拥有的权限进行控制,让不同岗位、层级的员工,只能使用和看到其职权范围内的功能和信息,才能确保分工协作体系能顺畅运作,同时维护企业信息安全。
权限系统,是指对用户在系统中可操作的功能、可查看数据范围进行控制的功能模块。它是通过设定不同的用户角色,再将权限分配给各个角色,控制不同的用户,能在系统中使用什么功能、查看什么信息,是企业对员工进行权限控制的一个工具。
并非所有的系统都需要做权限控制——只有当系统功能足够多、使用角色多样时,才有对用户进行权限控制的必要。当更多岗位的工作内容被纳入系统时,系统使用的角色也会从单个变成多个;为了避免员工的权限不受限带来的信息安全问题,就需要分岗位进行权限控制。
而当系统功能单一、或使用角色单一时,意味着系统的用户必须拥有该功能的权限,或他们的工作职责也相同,需要使用的功能也相同;此时,对用户权限进行控制没有太大意义。
根据员工的岗位职责,控制在系统中能使用的功能,是最常见的情况,也是权限控制最基础、最主要的部分——限制用户能使用的功能,称之为功能权限控制。
功能权限取决于用户在实际工作中,要负责的工作内容。而工作内容取决于用户所在岗位的岗位职责;因此,功能权限取决于用户的岗位职责,用户有什么岗位职责,在系统上就应该对应拥有什么功能权限。
多个不同或相同岗位的员工都拥有同一个功能的权限,但该功能产生的数据,每个员工并不需要看到所有数据,而只能看到一部分。限制用户在查看某类数据时,能查看到的数据范围,称之为数据权限控制。
如果数据不做数据权限控制,会导致对应业务的核心数据,被有该功能权限的所有员工查看到。而数据权限控制能够确保数据的私密性,避免因员工的数据权限超出权限范围,给企业带来不稳定因素和损失。
文.LeaRun