基于角色的权限系统的问题
先来举个例,拿军队中管理机构比作一个复杂的系统,从上到下系统中有司令,军长,师长,旅长,团长等等,司令拥有最高权限,比喻可以撤军长的职,把师长降级为排长,还可以发动战争,军长又可以撤师长及他以下官的职务,并且还可以命令发射核武器,现在把司令,军长,师长,旅长,团长这些职务作为本系统中的角色,张三扮演司令的角色,王五和李二为军长,现在张三司令要取消军长能发射核武器的权限,他可以直接修改军长这一角色的权限即可,那么要是张三司令只取消李二军长一个人发射核武器的权限该怎么修改他的权限呢?李二是作为一个角色担任军长,所有军长这一角色拥有的权限是一至的,那么要修改某一个军长的权限怎么实现呢?我把这样称为分极角色,不知道这样有没有问题,自己又感觉这种角色实现好像和基于用户组的权限系统差不多,请高手指路。
我另外还有一种实现,把系统中一种操作称为一个权限,比喻撤军长的职,发射核武器,都称为一个权限,而一个角色可以拥有一个或多个权限,一个系统中的用户都扮演一个角色,现在可以把所有的权限给一个角色,张三担任这个角色,那么我们可以称他为司令,又把若干个权限给另外一个角色,把这个角色称为军长,王五担任这个角色,又把同样的权限给另外一个角色,也称他为军长,只是比王五那个军长和一个发射核武器的权限,李二担任这个角色,这样就可以实现,但是这样会导致系统中有N多个角色的问题。请高手指路。