角色来源和角色计算

不同的身份验证机制提供了在哪里查找主体/用户角色的不同可能性。角色源是计算分配给已验证主体的角色的基础。

使用用户/组服务

在配置身份验证机制期间,必须指定用户组服务的名称。使用的角色服务始终是配置为活动角色服务的角色服务。角色计算本身在这里描述 用户/组和角色服务之间的交互

直接使用角色服务

在配置身份验证机制期间,必须指定角色服务的名称。角色的计算工作如下:

  1. 获取用户的所有角色。

  2. 对于结果集中的每个角色,获取所有祖先角色并将这些角色添加到结果集中。

  3. 如果结果集包含本地管理角色,请添加该角色 ROLE_ADMINISTRATOR .

  4. 如果结果集包含本地组管理员角色,请添加该角色 ROLE_GROUP_ADMIN .

该算法不提供具有个性化角色的可能性,也不考虑组成员身份。

使用HTTP头属性

主体的角色由客户端在HTTP头属性(代理身份验证)中发送。geoserver本身不进行角色计算,并从header属性中提取角色。在配置过程中,必须指定header属性的名称。标题属性名为“roles”的示例:

roles: role_a;role_b;role_c

具有角色参数的角色示例:

roles: role_a;role_b(pnr=123,nick=max);role_c

默认语法是

  • 角色由分隔 ;

  • 角色参数列表以开头 ( 结尾是 )

  • 角色参数是由以下项分隔的键值对 =

  • 角色参数由分隔 ,