Как запретить участнику сайта видеть других участников сообщества на свежем воздухе
Я использую сообщество Alfresco 5.0.d.
Я ищу способ запретить участникам сайта А осуществлять поиск участников сайта В и наоборот, а также другие сведения о двух разных сайтах.
Например, участники сайта siteA, они должны иметь возможность просматривать и выбирать все рабочие процессы SiteSite и рабочие сайты siteA вместе с участниками этого сайта. Члены siteB могут только просматривать и выбирать все рабочие процессы SiteSite и рабочие процессы siteB вместе с участниками этого сайта.
Заранее спасибо!
2 ответа
Исправлено это выдано
- Компонент Peopler Finder: переопределение people-finder.js (PATH: /Applications/alfresco-5.0.d/tomcat/webapps/share/components/people-finder/people-finder.js)
- Живой поиск: удалено предложение людей из живого поиска.
Для изменения части поиска в реальном времени, обратитесь к ответу переполнения стека
Спасибо!
У нас была похожая настройка в нашей организации. Мы ограничивали пользователей для поиска только текущих членов в поле уполномоченного рабочего процесса. Чтобы добиться этого, мы передали дополнительный 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);
}
}
.......
}
Пожалуйста, дайте мне знать, если вам нужна дополнительная помощь по этому вопросу.