我正在使用Alfresco社区5.0.d.
我正在寻找一种方法来阻止网站A成员搜索网站B成员&反之亦然,其次是2个不同网站的其他细节。
例如,siteA成员,他们应该能够查看和选择allSites-workflows& siteA-workflows以及该站点成员。 siteB成员只能查看和选择allSites-workflows& siteB-workflows以及该站点成员。
提前致谢!
答案 0 :(得分:3)
我们的组织中也有类似的定制。我们限制用户仅搜索工作流程受理人字段中的当前成员。为此,我们传递了额外的siteid,搜索只查看给定站点的成员。 以下是Adhoc工作流程的人员选择器的示例。
我们从
扩展了searchUsers方法org.alfresco.repo.security.authority.script.ScriptAuthorityService
public ScriptUser[] searchUsers(String nameFilter, ScriptPagingDetails paging, String sortBy, String siteName)
{......
Map<String, String> siteGroups = this.serviceRegistry.getSiteService().listMembers(siteName,nameFilter,null,MAX_RESULTS,true);
Set<String> allAuthorities = siteGroups.keySet();
List<String> authorities = new ArrayList<String>();
for(String authority : allAuthorities)
{
if (!authority.startsWith("GROUP_"))
{
authorities.add(authority);
}
}
.......
}
如果您需要更多帮助,请告诉我。
答案 1 :(得分:0)
修正了由
发布的内容要修改实时搜索部分,请参阅stack-overflow answer
谢谢!