第六章:我的权限控制方法论——分布式权限控制

作者:neo yang 时间:2022/06/07 读: 6037
文章大纲 一、分布式角色权限体系 1、前后端分离的分布式权限控制 2、前端的多端分布式权限控制 3、后端的多模 […]

文章大纲

一、分布式角色权限体系

1、前后端分离的分布式权限控制

2、前端的多端分布式权限控制

3、后端的多模块分布式权限控制

二、分布式凭证权限体系

无论在哪个SAAS或是管理系统中,权限控制的设计都是一个复杂的事情。

我们先看一下Wordpress的权限设计。

CapabilitySuper AdminAdministratorEditorAuthorContributorSubscriber
create_sitesY     
delete_sitesY     
manage_networkY     
manage_sitesY     
manage_network_usersY     
manage_network_pluginsY     
manage_network_themesY     
manage_network_optionsY     
upload_pluginsY     
upload_themesY     
upgrade_networkY     
setup_networkY     
CapabilitySuper AdminAdministratorEditorAuthorContributorSubscriber
activate_pluginsYY (single site or enabled by network setting)    
create_usersYY (single site)    
delete_pluginsYY (single site)    
delete_themesYY (single site)    
delete_usersYY (single site)    
edit_filesYY (single site)    
edit_pluginsYY (single site)    
edit_theme_optionsYY    
edit_themesYY (single site)    
edit_usersYY (single site)    
exportYY    
importYY    
CapabilitySuper AdminAdministratorEditorAuthorContributorSubscriber
install_pluginsYY (single site)    
install_themesYY (single site)    
list_usersYY    
manage_optionsYY    
promote_usersYY    
remove_usersYY    
switch_themesYY    
update_coreYY (single site)    
update_pluginsYY (single site)    
update_themesYY (single site)    
edit_dashboardYY    
customizeYY    
delete_siteYY    
CapabilitySuper AdminAdministratorEditorAuthorContributorSubscriber
moderate_commentsYYY   
manage_categoriesYYY   
manage_linksYYY   
edit_others_postsYYY   
edit_pagesYYY   
edit_others_pagesYYY   
edit_published_pagesYYY   
publish_pagesYYY   
delete_pagesYYY   
delete_others_pagesYYY   
delete_published_pagesYYY   
delete_others_postsYYY   
delete_private_postsYYY   
edit_private_postsYYY   
read_private_postsYYY   
delete_private_pagesYYY   
edit_private_pagesYYY   
read_private_pagesYYY   
unfiltered_htmlYY (single site)Y (single site)   
unfiltered_htmlYYY   
CapabilitySuper AdminAdministratorEditorAuthorContributorSubscriber
edit_published_postsYYYY  
upload_filesYYYY  
publish_postsYYYY  
delete_published_postsYYYY  
edit_postsYYYYY 
delete_postsYYYYY 
CapabilitySuper AdminAdministratorEditorAuthorContributorSubscriber
readYYYYYY

基于用户角色和用户等级,实现分层次的角色权限控制体系。

WordPress权限控制系统是一个非常经典的权限控制系统,但是,因为Wordpress在用户和权限方面做得非常“轻量化”,所以,Wordpress的权限控制系统可以说只是一个完整的“骨架”,然而,仅仅是一个骨架也足以让很多人头昏脑胀。

所以,你可以想象一下,在那些大系统、复杂系统中,权限控制能复杂到多么地令人发指。

我曾经做过很多很多产品,涉及面也很广,权限控制系统几乎是每个产品都会涉及的,所以在这方面积累了大量的经验。

我曾经无数次优化和简化各种权限控制系统。最终总结出一套简单有效的方法。我把这套方法称之为:分布式权限控制。

权限控制之所以复杂,最根本的原因是因为集中式的权限设计、分配和管理导致我们不得不“集中式”地,上帝视角地去考虑各种各样的角色在各种各样的场景中的“能”和“不能”。

而,如果,权限的分配和管理被分散开,那么,一切都将变得简单得多了。

一、分布式角色权限体系

经典的权限控制体系都是集中式的角色权限体系。

角色权限体系,一直是主流。

这里介绍的是分布式的角色权限体系。

无论集中式还是分布式,角色权限体系有一点是相同的:角色决定权限,是什么样的人决定了有什么样的能力。

分布式角色权限体系可以分成三种。

以下内容只有VIP用户可以看。

订阅VIP

订阅我的VIP会员,可以阅读所有付费VIP内容。

如果您已是VIP会员,请登录.


copyright © www.lyustu.com all rights reserve.
Theme: TheMoon V3.0. Author:neo yang