Hi there,
I’m trying to setup XWiki for a non profit org, public Wiki with some pages restricted to internal users. Authentication happens via OIDC / Keycloak, so all members of the org can authenticate and modify the wiki as required. I’m struggling to protect the private information of our users from the public though.
In summary: XWiki as is is mostly fine for users after login. For the public, unauthenticated visitors it exposes way too much information which is hard for us to get under control. Let me split that in a couple of questions:
Profile Visibility
By default, all user and group profile pages are created as Childs of the Xwiki
page. Also by default, all of them are visible to the public and I have not found an easy way to change that. This exposes the full name and the email address of each user to the public!
After going through the forum, I found three potential options:
- Have each user modify their profile pages permissions - impractical, also because they’re terminal pages and its not easy at all to modify these permissions
- Use an Event listener as described here. I haven’t tested that, this may work
- Create the XWiki node itself and modify access permissions on this one, basically deny the view permission for unauthenticated users for this page and all child pages. As there are system pages as well, I’m not sure though if that would break something? So far I’m seeing issues with the OIDC authentication.
Question 1: how to hide the user profiles effectively?
Breadcrumbs
The breadcrumbs also allow the unauthenticated users to see / pages they’re not supposed to open, mainly below the XWiki node. As far as I can tell, it’s impossible to hide them completely, so I’m currently using custom CSS in the theme configuration to hide the breadcrumbs completely.
Question 2: Is there any way to configure what is shown in the breadcrumbs?
History
The history of a page shows who edited the page at which point in time, which is a very useful feature - but it exposes personal information about certain users (including their full name) to the public.
Question 3: Is it possible to hide the page history for unauthenticated users?
Same question applies to the “Last changed by…” page header on top of every page, which should also not be visible for unauthenticated users.