Backport #29260: Respect user enumeration settings in user status lists #29429
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Backport #29260: Respect user enumeration settings in user status lists
So far, the functions to find user statuses listed didn't respect user
enumeration settings (shareapi_allow_share_dialog_user_enumeration
and shareapi_restrict_user_enumeration_to_group core app settings).
Fix this privacy issue by returning an empty list in case
shareapi_allow_share_dialog_user_enumeration is unset or
shareapi_restrict_user_enumeration_to_group is set.
In the long run, we might want to return users from common groups if
shareapi_restrict_user_enumeration_to_group is set. It's complicated
to implement this in a way that scales, though. See the discussion at
#27879 (review)
for details.
Also, don't register the user_status dashboard widget at all if
shareapi_allow_share_dialog_user_enumeration is unset or
shareapi_restrict_user_enumeration_to_group is set.
Fixes: #27122
Signed-off-by: Jonas Meurer jonas@freesources.org