基于角色的搜索配置
关于基于角色的搜索
Fess 可以根据任意认证系统认证的用户认证信息来区分搜索结果。 例如,拥有角色a的用户A可以在搜索结果中看到角色a的信息,但不拥有角色a的用户B即使搜索也不会看到该信息。 通过使用此功能,可以在门户网站或单点登录环境中,根据登录用户所属部门或职位实现搜索。
Fess 的基于角色的搜索可以从以下途径获取角色信息。
请求参数
请求头
Cookie
Fess 的认证信息
在门户网站或代理型单点登录系统中,可以在认证时通过 Cookie 将认证信息保存到 Fess 运行的域和路径中来获取角色信息。 此外,在反向代理型单点登录系统中,可以在访问 Fess 时将认证信息添加到请求参数或请求头中来获取角色信息。
基于角色的搜索配置
本文介绍使用 Fess 认证信息的基于角色的搜索配置方法。
Fess 管理页面配置
启动 Fess 并以管理员身份登录。 创建角色和用户。 例如,在角色管理页面创建 Role1,在用户管理页面创建属于 Role1 的用户。 接下来,在爬取配置的权限栏中输入 {role}Role1 并保存。 按用户指定时可以用 {user}用户名,按组指定时可以用 {group}组名来描述。 之后使用此爬取配置进行爬取,即可创建仅由创建的用户可搜索的索引。
登录
从管理页面退出登录。 以属于 Role1 的用户登录。 登录成功后会重定向到搜索页面首页。
正常搜索时,仅显示在爬取配置中设置了 Role1 角色的内容。
此外,未登录状态下的搜索将作为 guest 用户的搜索。
登出
在以非管理员用户登录状态下,在搜索页面选择登出即可退出登录。