Skip to content

Restrict global address book to specific users #12

@IzzySoft

Description

@IzzySoft

First: congrats to this plugin – exactly what I was looking for!

Now: Domain address books can be restricted to the resp. domain, which is fine with me. I'd like to use the Global address book (all domains), but not expose it to everyone. Use case: staff members/admins should be able to see users of all domains, "normal users" should not. While this would be easy if staff members were all in one domain where no "normal users" are in, that doesn't always match: either other users are part of the same domain as their admins, or both are split across multiple domains.

Possible approaches:

  • with PostfixAdmin used (as in my case), the domain_admins table (i.e. a view on it) could be used, restricting the book to members of this table with active=1 AND domain='ALL' (full view of all domains) resp. active=1 AND domain=<domain> (selective view for subset of domains)
  • if the first cannot be used, the same might be done with a table that's manually populated
  • another possibility would be introducing a $config['_sql_gb_data_allowed_users'] setting, where all allowed users ("admin staff members") are listed explicitly. If set (and not NULL), this could either override the other hidden/allowed settings ("staff only") or be added to those (to e.g. allow one full domain plus users from this list regardless of their domain). For simplicity I'd vouch for the latter, as the former can be achieved easily using $config['_sql_gb_read_hidden'] = array('*'); if I got that right.

I'd be fine with either approach (the last one is probably easiest to achieve, and should cover most cases unless staff numbers are high – though the first approach might be easier to manage, as one cannot forget to add new/remove "old" staff members).

Feasible? Would you consider this? Or is it even possible already, and I just didn't see it? Thanks in advance!

Metadata

Metadata

Assignees

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions