用户/组和角色服务之间的交互¶
计算用户角色¶
下图说明了用户/组服务和角色服务如何交互以计算用户角色。

User/group and role service interacting for role calculation¶
从用户/组服务获取启用的用户时,必须标识分配给该用户的角色。识别程序为:
获取用户的所有已启用组。如果一个组被禁用,它将被丢弃。
获取与用户关联的所有角色,并将这些角色添加到结果集中。
对于用户所属的每个已启用组,获取与该组关联的所有角色,并将这些角色添加到结果集中。
对于结果集中的每个角色,获取所有祖先角色并将这些角色添加到结果集中。
根据需要对结果集中的每个角色进行个性化设置。
如果结果集包含本地管理角色,请添加该角色
ROLE_ADMINISTRATOR
.如果结果集包含本地组管理员角色,请添加该角色
ROLE_GROUP_ADMIN
.
备注
角色个性化为每个角色查找角色参数(键/值对),并检查用户属性(键/值对)是否包含相同的键。如果找到任何匹配项,则角色参数的值将替换为用户属性的值。
用户凭据的身份验证¶
用户/组服务主要在身份验证期间使用。中的身份验证提供程序 身份验证链 可以使用用户/组服务对用户凭据进行身份验证。

Using a a user/group service for authentication¶
地理服务器默认值¶
下图说明了geoserver中的默认用户/组服务、角色服务和身份验证提供程序:

默认地理服务器安全配置¶
配置了两个身份验证提供程序 Root 供应商和 Username/password 供应商。这个 Root 提供程序对地理服务器进行身份验证 根帐户 不使用用户/组服务。这个 Username/password 提供程序是默认的提供程序,将用户名和密码凭据转发给用户/组服务。
存在单个用户/组服务,它将用户数据库保持为XML。数据库包含一个名为 admin
没有团体。类似地,角色服务将角色数据库保持为XML。默认情况下,它包含一个名为 ADMIN
,它与 admin
用户。这个 ADMIN
角色映射到 ROLE_ADMINISTRATOR
因此, admin
在角色计算期间,用户与系统管理员角色关联。