我一直在阅读documentation,并提到了5个基本权限:
阅读,写作,创建,删除和管理
前四个非常明显,我认为ADMINISTRATION
意味着所有其他四个(以层次结构的方式),但according this this other question并非如此。
那么,ADMINISTRATION
权限实际意味着什么?
答案 0 :(得分:2)
他们毫无意义。它们是用小许可对象包裹的字符串,但最后,它们是数字的占位符; 1,2,4,8,16 ......
从逻辑上讲,您授予User ID为12347 WRITE和READ权限为Book的ID为28543867,但您实际上是在授予权限1和2. 2并不会像您想象的那样自动暗示1,因为这只在我们的大脑 - 如果您无法查看正在编辑的内容,则无法进行编辑。 ADMIN权限应该意味着READ,WRITE,DELETE等,但事实并非如此,因为Spring Security不是管理员权限,只有16个。
这些权限只是默认设置,但您可以扩展它,删除一些不需要的权限,将一些权限替换为具有不同名称的权限,或者忽略整个权限并从头开始重新定义您的权限。只要您所做的更改与API一致,并且每个权限都具有2的幂的唯一值,那么您可以开始授予权限SLEEP_LATE(8),DRIVE_20_OVER_THE_SPEED_LIMIT_AFTER_MIDNIGHT(32)等。