Je suis tombé sur ce problème car j’ai remarqué que, lorsque je suis déconnecté de mes propres forums, je ne suis plus exclu des utilisateurs triés par nombre de « j’aime » reçus.
Est-ce intentionnel afin d’exposer les membres du groupe administrateur, même lorsque /u?exclude_groups=admins est défini ?
Je pense que cela peut se produire parce que, par défaut, les membres des groupes d’administration ne sont pas accessibles aux utilisateurs non connectés. Vous pouvez essayer cela, par exemple, avec le groupe d’administration de Meta https://meta.discourse.org/g/admins.
Vous pouvez configurer cela dans les paramètres du groupe, ce qui devrait résoudre votre problème (je ne l’ai pas testé).
Si vous pouviez filtrer l’annuaire des utilisateurs par un groupe dont vous n’avez pas connaissance ou dont vous n’êtes pas autorisé à voir les membres, cela entraînerait une fuite d’informations. Cela pourrait ne pas être très pertinent pour le groupe d’administration, mais imaginez que vous puissiez filtrer l’annuaire des utilisateurs pour les groupes clients d’entreprise masqués sur Meta.
Avant de publier, j’ai consulté https://meta.discourse.org/g/admins, qui est masqué aux utilisateurs non connectés. C’est pourquoi j’ai lancé ce sujet. /g/admins est masqué pour les utilisateurs non enregistrés, mais ils peuvent toujours voir les membres du groupe Administrateurs en visitant /u?exclude_groups=admins, ce qui semble, du moins, étrange.
Maintenant, je suis confus. D’après le titre, je m’attendais à ce que /g/admins et /u?exclude_groups=admins fonctionnent tous les deux pour les utilisateurs connectés, alors qu’ils ne fonctionnent pas pour les utilisateurs déconnectés.
Peut-être parlons-nous de différents états de « masqué » sur la page des groupes :
Par « masqué », j’entends quelque chose de privé : visiter /g/admins redirige les utilisateurs déconnectés vers la page d’erreur. Je pense que vous pensez au fait que la plupart des utilisateurs ne voient pas les groupes par défaut sur la page des groupes (sauf les modérateurs) car un code supplémentaire les masque. Mais même si les groupes ne sont pas affichés sur la page des groupes, il est possible de consulter la page du groupe pour les utilisateurs qui cliquent sur un lien.
Le masquage privé est ce qui rend le groupe secret et c’est la raison pour laquelle je pense qu’il est logique que le filtre sur l’annuaire des utilisateurs ne fonctionne pas. Cela divulguerait des informations. Le groupe qui est simplement non affiché n’est pas secret.
Vous les limitez donc aux utilisateurs connectés. Si vous souhaitez que les visiteurs aient accès au groupe, pourquoi limiter la visibilité et l’accès aux membres au lieu de choisir « tout le monde » ?
Peux-tu préciser ce que tu veux me dire avec cette capture d’écran ?
Je vois que tu limites l’accès au groupe aux utilisateurs connectés. Tu limites également l’accès aux membres du groupe aux utilisateurs connectés.
Ensuite, tu montres qu’un utilisateur non connecté ne peut pas accéder aux données des membres du groupe. Pour moi, cela semble logique. Je m’attendrais à ce que cela fonctionne uniquement si tu avais choisi « tout le monde » dans les deux paramètres.
On a l’impression que tu dis : « Je veux masquer les données sur les membres du groupe d’administration aux visiteurs. » Mais en même temps, tu te plains que ces données ne sont pas disponibles pour filtrer le répertoire des utilisateurs.
Tu ne peux pas exclure les membres d’un groupe si tu n’as pas le droit de savoir qui s’y trouve.
Je fais écho à ce que @Moin a dit ici. Si nous faisions en sorte que exclude_groups=admins fonctionne, alors quelqu’un pourrait déduire les membres du groupe des administrateurs, même s’ils ne sont pas censés y avoir accès.
Je crains donc que cela soit intentionnel et peu susceptible de changer. Si vous souhaitez que les personnes puissent identifier les membres du groupe des administrateurs, vous devrez le rendre visible pour tout le monde.
La même logique s’applique à toute personne qui s’inscrit. Si un tout nouvel utilisateur crée un compte et utilise exclude_groups=admins, les administrateurs sont masqués de sa liste, ce qui lui permet déjà de déduire l’appartenance en comparant les listes filtrées et non filtrées.
La barrière pour « le comprendre » se limite simplement à créer un compte gratuit, ce que n’importe qui peut faire en quelques secondes. Quelle est donc la véritable différence entre un visiteur déconnecté et un compte âgé d’une minute ici ?
Pour donner du contexte, tout ce que je cherche réellement à accomplir, c’est que dans le plugin de la barre latérale, il y ait un classement, et je ne souhaite tout simplement pas que le groupe des administrateurs soit inclus dans la liste des « plus de likes reçus » ou des principaux contributeurs.
Oui, c’est tout à fait vrai. Mais en ce qui concerne les fonctionnalités de sécurité, nous devons concevoir les choses pour qu’elles fonctionnent exactement comme elles sont décrites. Si quelqu’un décide de masquer l’appartenance à un groupe, cela doit fonctionner à 100 % de manière fiable.
Pourquoi ne pas modifier la visibilité du groupe des administrateurs et de ses membres en « tout le monde » pour y parvenir ? Ainsi, les données seraient accessibles aux visiteurs et le filtre devrait fonctionner. Surtout quand vous dites que n’importe qui peut se connecter et visiter /g/admins, cela ne devrait pas avoir d’importance si les utilisateurs non connectés pouvaient le faire aussi.
Le problème, c’est que masquer l’appartenance à un groupe n’est de toute façon pas très fiable ici. Sur de nombreux forums, le mien inclus, les administrateurs font partie des utilisateurs les plus actifs. Vous pouvez donc simplement trier l’annuaire par activité et repérer généralement un ou deux administrateurs immédiatement.
L’appartenance au groupe administrateur se déduit facilement de l’activité exposée. D’autant plus que https://meta.discourse.org/u est déjà configuré par défaut pour trier par activité :
Bien sûr, vous pourriez aussi masquer tous les profils. Mais mon argument est que l’avantage en matière de sécurité invoqué dans le non-respect actuel de /u?exclude_groups=admins semble inexistant ou, au mieux, purement superficiel.
Ainsi, s’inscrire n’ajoute pas vraiment de sécurité dans ce cas. Que vous soyez déconnecté ou que vous créiez simplement un compte, vous pouvez identifier les administrateurs en triant, car leurs niveaux d’activité restent publics, même lorsque j’essaie de les exclure de la liste avec /u?exclude_groups=admins.
C’est d’ailleurs pour cela que j’ai signalé le problème initialement. Si masquer les administrateurs était une fonctionnalité de sécurité délibérée, on s’attendrait à ce qu’elle privilégie le fait d’empêcher les non-utilisateurs de le découvrir. Or, dans l’état actuel des choses, c’est l’inverse : une personne déconnectée peut le deviner plus facilement en visitant simplement la page par défaut : /u.
C’est cette inversion qui m’a fait penser que ce n’était peut-être pas intentionnel.
Édition :
Pour moi, pour revenir au problème principal, il ne s’agit même pas de sécurité. C’est un point soulevé de votre côté. Je souhaiterais simplement que l’activité des administrateurs ne figure pas dans les classements pour le plugin de la barre latérale et la page /u.
Je vois ce que tu veux dire, mais il est important de considérer que le système de sécurité des groupes n’est pas spécifique au groupe @admins. Le même modèle de sécurité devrait fonctionner pour le groupe @super-secret-lurkers, si un forum en avait un
Être capable de déterminer « n’est pas dans un groupe » revient fondamentalement à être capable de voir « est dans un groupe ».
Oui, c’est logique. Est-ce que rendre le groupe administrateurs visible par « tout le monde » te conviendrait ?
Non, j’ai déjà essayé cela avant d’ouvrir le sujet. Je pensais peut-être que les non-membres devaient pouvoir voir le groupe pour que l’exclusion fonctionne. Mais non, /u?exclude_groups=admins est complètement ignoré pour les visiteurs non enregistrés.
Il ne s’agit pas de masquer les utilisateurs, mais de cacher les informations concernant qui est membre d’un groupe. C’est pourquoi vous pouvez voir les membres d’un groupe masqué dans l’annuaire, mais vous ne pouvez pas accéder à la page du groupe. Vous savez que l’utilisateur existe, mais vous ne savez pas s’il appartient à un groupe secret.
Par exemple, vous avez un groupe pour le client-A, mais vous ne souhaitez pas que les autres utilisateurs de votre forum sachent que ce groupe existe. Vous limitez alors la visibilité du groupe, bien entendu, les membres restent visibles ailleurs. Vous pouvez les voir publier et dans l’annuaire des utilisateurs. Mais vous ne savez pas qu’ils appartiennent au groupe client-A.
De la même manière, vous limitez la visibilité du groupe d’administration. Les visiteurs n’ont pas le droit de savoir qui fait partie du groupe. Mais ils ont le droit de savoir que ces utilisateurs utilisent le forum.
Non, j’ai seulement basculé l’option « Qui peut voir les membres de ce groupe ? ». Je ne veux pas activer « Qui peut voir ce groupe », car cela permettrait l’accès public à /g/admins. Mais je peux faire un test pour voir si /u?exclude_groups=admins est bien respecté. À tout à l’heure.