1.3. 声明性配置授权
在 infinispan.xml 文件中配置授权。
流程
-
在
cache-container中配置全局授权设置,用于指定角色映射器,并定义一组角色和权限。 配置缓存授权,以根据用户角色限制访问权限。
<infinispan> <cache-container default-cache="secured" name="secured"> <security> <authorization>1 <identity-role-mapper />2 <role name="admin" permissions="ALL" />3 <role name="reader" permissions="READ" /> <role name="writer" permissions="WRITE" /> <role name="supervisor" permissions="READ WRITE EXEC"/> </authorization> </security> <local-cache name="secured"> <security> <authorization/>4 </security> </local-cache> </cache-container> </infinispan>如果您不想将所有角色应用到缓存,请明确定义授权缓存的角色,如下所示:
<infinispan> <cache-container default-cache="secured" name="secured"> <security> <authorization> <identity-role-mapper /> <role name="admin" permissions="ALL" /> <role name="reader" permissions="READ" /> <role name="writer" permissions="WRITE" /> <role name="supervisor" permissions="READ WRITE EXEC"/> </authorization> </security> <local-cache name="secured"> <security> <authorization roles="admin supervisor reader"/>1 </security> </local-cache> </cache-container> </infinispan>- 1
- 定义缓存的授权角色。在本例中,只有
writer角色的用户没有授权"secured"缓存。Data Grid 拒绝来自这些用户的任何访问请求。