Альт сервер 10
SOGo 5.9.1 + PostgreSQL 14
Созданы две глобальные адресные книги ссылающиеся на разные таблицы в которых находятся пользователи разных организаций:
{
type = sql;
id = ab_org1;
displayName = "Организация №1";
viewURL = "postgresql://sogo:sogo@127.0.0.1:5432/sogo_work/ab_org1";
canAuthenticate = NO;
isAddressBook = YES;
SearchFieldNames = (c_cn, mail, ou);
listRequiresDot = NO;
disableSubgroups = YES;
},
{
type = sql;
id = ab_org2;
displayName = "Организация №2";
viewURL = "postgresql://sogo:sogo@127.0.0.1:5432/sogo_work/ab_org2";
canAuthenticate = NO;
isAddressBook = YES;
SearchFieldNames = (c_cn, mail, ou);
listRequiresDot = NO;
disableSubgroups = YES;
}
В итоге при выборе любой адресной книги отображаются пользователи из обеих книг.
При выполнении поиска то же самое.
Если выбрать одну из книг и в поле поиска ввести например часть имени то в логах видно что поиск ведётся по обеим книгам:
SQL: SELECT * FROM ab_org1 WHERE (LOWER(c_cn) LIKE '%mis%' OR LOWER(mail) LIKE '%mis%' OR LOWER(ou) LIKE '%mis%')
SQL: SELECT * FROM ab_org2 WHERE (LOWER(c_cn) LIKE '%mis%' OR LOWER(mail) LIKE '%mis%' OR LOWER(ou) LIKE '%mis%')
В гайде не нашел параметров отвечающих за это. Либо так и задумано, либо пока рездельный поиск не реализован, либо баг.