web-dev-qa-db-fra.com

Écran de gestion des autorisations utilisateur

Je travaille sur une interface utilisateur de gestion des utilisateurs difficile. L'écran de gestion des autorisations doit effectuer toutes les opérations suivantes:

une. Autoriser l'utilisateur à rechercher des organisations et à sélectionner n'importe quel nombre d'organisations

b. Autoriser l'utilisateur à rechercher des utilisateurs et à sélectionner n'importe quel nombre d'utilisateurs

c. Afficher toutes les organisations associées aux utilisateurs sélectionnés

ré. Afficher tous les utilisateurs associés aux organisations sélectionnées

e. Autoriser les utilisateurs à gérer les autorisations répertoriées ci-dessous dans le tableau

Je crains que c et d puissent facilement créer un effet Snowball s'ils commencent à remplir toutes les organisations associées à ces utilisateurs et qu'un de ces utilisateurs nouvellement peuplés a 10 organisations supplémentaires ... et ainsi de suite et ainsi de suite.

Existe-t-il des modèles ou des recommandations sur la manière de gérer ce type de situation?

Screen design

Mise à jour: Serait-ce une mauvaise idée d'ajouter des cases à cocher qui disent "afficher les organisations associées" et "afficher les utilisateurs associés" pour empêcher le remplissage automatique des associations? enter image description here

5
Mike.Alvarez

Cela dépend du nombre estimé d'utilisateurs que vous manipulez, mais à première vue, vous parlez de centaines au moins, avec des dizaines à des centaines de clients également.

Dans ce cas, vous devez prendre en compte de nombreuses sélections: utilisateurs, autorisations utilisateur et autorisations par organisation.

La bonne nouvelle est qu'il est probable que la plupart des utilisateurs ne font pas partie de plusieurs organisations, vous n'avez donc pas à vous soucier trop du débordement. La mauvaise nouvelle est que ce sont trois choses principales à afficher quand une table ne prend pas vraiment en compte cette troisième dimension.

Je pense que pour prendre la meilleure décision ici, vous devez répondre à quelques questions auxquelles nous n'avons pas de réponses dans la description:

  1. Quel est le principal cas d'utilisation de ce scénario (qui verra réellement cette page et prendra ces décisions?
  2. Le cas d'utilisation principal (ou tout autre cas d'utilisation secondaire) nécessite-t-il ou devrait-il même prendre en charge plusieurs modifications d'autorisation sur plusieurs clients simultanément? (Cela pourrait entraîner des risques pour la sécurité, et les clients peuvent ne pas aimer un tel système, en supposant qu'ils le connaissent)
  3. En moyenne, combien d'utilisateurs ont accès à combien d'organisations différentes? (le nombre, ainsi que les cas Edge et les attentes concernant les modifications à venir, aideront à déterminer la meilleure mise en page de la page pour la navigation et la facilité d'utilisation.)

L'autre bonne nouvelle est que, quelles que soient les réponses à ces questions, pour le rendre aussi simple que possible, vous avez vraiment deux options principales:

  1. Autoriser un seul changement d'utilisateur/d'organisation par page - C'est la pratique standard, en particulier avec les services SaaS où vous pouvez avoir des utilisateurs avec des dizaines à des centaines de clients pour accéder , et il fonctionne parfaitement pour l'évolutivité. Cela signifie que, quelle que soit la personne qui modifie les autorisations, elle ne peut le faire que pour un utilisateur ou une organisation à la fois. La première affiche toutes les organisations auxquelles l'utilisateur a accès et les autorisations paramètres pour chacun; ce dernier montre tous les utilisateurs à une organisation avec les mêmes paramètres d'autorisations.
  2. Avoir une page d'accueil qui ressemble plus à un système de recherche de rapports de base, où l'ajout des paramètres requis fournit une liste ordonnée, par utilisateur ou par organisation, des utilisateurs disponibles auxquels attribuer des autorisations - C'est plus lourd et franchement peut ne pas bien fonctionner en fonction de la pile technologique, en particulier lors de la mise à l'échelle. En théorie, vous pourriez obtenir des résultats par milliers ou dizaines de milliers, ce qui prendrait beaucoup de temps à charger et serait lourd à la fois sur les serveurs et sur votre propre machine (après tout, votre navigateur devra tout conserver sur cette liste). ). Sinon, cela nécessiterait une pagination, ce qui serait un défi car vous devez alors (pour les meilleures pratiques UX) conserver les données d'autorisations tout en vous déplaçant entre les pages.

J'ai un problème similaire en ce moment avec un nouveau client, bien que leur échelle soit beaucoup plus petite, seulement 35 utilisateurs avec l'espoir que dans 3 ans nous en verrons 200, sur des dizaines à des centaines de clients. La dernière entreprise avec laquelle j'ai travaillé a utilisé la première option que j'ai listée, principalement par paresse quand ils l'ont développée, mais une fois que l'entreprise est passée de 100 clients à 3000 clients, cela s'est avéré être la bonne décision en raison de l'échelle, d'autant plus que c'était pour usage interne uniquement.

1
Jamezrp

Pour le problème de C et D, vous pouvez utiliser une barre de recherche (avec saisie semi-automatique). L'utilisateur doit donc utiliser la barre de recherche.

C'est bon pour 2 raisons: 1.- aider l'utilisateur à comprendre ce qui se passe, 2.- aider l'utilisateur à naviguer dans la complexité.

Voici un exemple: https://jqueryui.com/autocomplete/

0
Patricio Bustos