是否可以使用lucene或fts-Alfresco搜索Alfresco共享网站成员?例如,我想查找所有姓氏为"Smith"的网站成员。
此外,是否可以搜索对网站文件夹或文档具有特定权限的用户?
您不能直接使用Lucene搜索网站成员,因为索引没有任何与此相关的数据。你需要做的是使用siteService来获取这些信息。你可以使用这些API中的任何一个。第二个返回Map,所以可能更相关。
org.alfresco.service.cmr.site.site.SiteService
listMembers(String shortName, String nameFilter, String roleFilter, boolean collapseGroups, SiteService.SiteMembersCallback callback)
or
listMembers(String shortName, String nameFilter, String roleFilter, int size)
您首先需要使用网站服务的API访问所有网站成员,然后对他们进行迭代以获得所需的用户。
我不确定你是否能用lucene做到这一点,但如果你想找到用户,下面的webscript是有用的。
若您在下面的url中看到nf=NameOfUsers
参数指定用户的名称。如果未指定nf
参数,它将返回所有用户。
http://localhost:8080/share/proxy/alfresco/api/sites/demo/memberships?size=250&nf=te&authorityType=用户
有关上述webscript的更多详细信息,您可以使用下面的URL。http://localhost:8080/alfresco/service/script/org/alfresco/repository/site/membership/memberships.get
是的,可以使用fts-Alfresco搜索Alfresco共享站点成员,因为站点成员属于Alfrescos组。
例如,以下查询返回SWSDP站点的成员:
PATH:"/sys:system/sys:authorities/cm:GROUP_site_swsdp//*" AND TYPE:"cm:person"