Gestion des droits des utilisateurs
Aperçu
Le système de gestion des accès des utilisateurs est conçu pour un contrôle détaillé sur qui a accès à quelles ressources de l'application. Le système utilise un modèle de contrôle d'accès basé sur les rôles (RBAC), où les utilisateurs sont assignés à des groupes et les droits d'accès sont accordés à ces groupes. Cela permet une gestion des accès efficace et sécurisée.
Gestion des groupes
Création d'un nouveau groupe
- Accéder à la section des groupes :
- Ouvrez l'onglet
Groups.
- Ouvrez l'onglet
- Ajouter un groupe :
- Cliquez sur le bouton
Create Group. - Indiquez un nom descriptif et un tag.
- Attribuez des droits d'accès initiaux.
- Cliquez sur le bouton
Dans un nouveau projet, un groupe Invité est toujours créé avec un ensemble de restrictions par défaut.
Onglets de l'éditeur de groupe
L'éditeur de groupe se compose des onglets Données de base, Attributs, Groupes, Permissions, Permissions finales et Historique des versions.
Dans l'onglet Données de base, en plus du nom et du tag, il y a une case à cocher Ne pas utiliser de permissions pour ce groupe : si elle est cochée, les utilisateurs du groupe obtiennent un accès complet à tous les contrôleurs de l'API de contenu, sauf ceux qui nécessitent une autorisation.
Héritage des droits d'accès
Dans l'onglet "Groupes", les groupes précédemment créés sont présentés de manière hiérarchique, le nouveau groupe créé peut être rattaché à un groupe déjà existant pour hériter des droits du groupe parent.
Si le groupe parent a une restriction de chemin, et que la même restriction dans le groupe enfant est écrasée, la restriction finale sera celle du groupe enfant, mais seulement si le groupe parent n'a pas l'option "Permission finale" spécifiée.
La désignation d'un groupe n'est possible que si aucun groupe parent ou enfant n'est déjà sélectionné.
Modification des droits d'accès
L'onglet "Permissions" est clé pour l'édition des droits d'accès.
Si vous avez précédemment spécifié un groupe parent pour l'héritage des droits, toutes les informations sur les accès établis seront placées dans le tableau en haut, l'édition des droits hérités est interdite. Les droits incluant des exceptions et les droits non utilisés sont regroupés séparément dans le même tableau.
Les modifications des droits ne prennent pas effet immédiatement — généralement dans un délai de 5 minutes maximum.
Actions de masse
Dans l'onglet "Permissions", il y a des boutons pour les opérations de masse :
- Copier les permissions d'un autre groupe — ajoute à votre groupe actuel toutes les permissions du groupe source sélectionné. Les permissions existantes sont conservées, les doublons sont ignorés.
- Accorder toutes les permissions — accorde au groupe toutes les permissions existantes. Les permissions déjà accordées restent inchangées.
- Annuler l'opération de masse — annule la dernière opération de masse (accord de toutes les permissions ou copie) : seules les permissions ajoutées par cette opération sont supprimées, les réglages manuels sont conservés.
Avant chaque opération, l'application demande une confirmation.
Gestion des droits d'accès
Création et édition des droits d'accès
Pour commencer à créer un droit, cliquez sur le bouton "Créer un droit" dans l'onglet "Permissions"
Un droit d'accès se compose d'une combinaison de méthode et de chemin.
- Créer un ensemble minimal de permissions :
- Cette option permet de minimiser la tâche de création de droits en générant l'ensemble minimal de permissions nécessaires.
Disponible uniquement s'il n'y a aucune permission précédemment établie dans le groupe.
- Définir des restrictions sur la délivrance des données :
- L'option est applicable uniquement lorsque "Créer un ensemble minimal de permissions" est sélectionné, elle établit une restriction sur la délivrance des données.
Le nombre d'enregistrements est défini dans les paramètres.
- Section API :
- Paramètre obligatoire si vous créez un nouvel accès, indique le chemin pour sélectionner les permissions.
- Chemin :
- La sélection est disponible uniquement après avoir choisi la section API, précise le chemin pour établir les droits.
- Nom :
- Champ obligatoire pour le nom du droit.
- Tableau des méthodes (bloc Conditions supplémentaires) :
- Le tableau représente un choix parmi les méthodes HTTP pour le chemin spécifié : dans la cellule Obtenir des données (GET) — options sans restrictions et avec restriction sur le nombre d'enregistrements, les autres méthodes (par exemple, Ajouter des données pour POST) sont activées par une case à cocher. Si la méthode pour le chemin n'est pas disponible, la cellule affiche "non disponible pour la sélection".
Pour tout chemin dans le tableau, 4 méthodes sont toujours indiquées : GET, POST, PUT, DELETE.
-
Conditions supplémentaires Ces conditions n'apparaissent pas pour tous les chemins, mais uniquement pour les "listes" et permettent de configurer des exceptions sur les documents obtenus.
- Si, par exemple, vous devez accorder une permission pour toutes les pages, mais faire une exception, vous pouvez cliquer sur le bouton "Sélectionnez les données que vous souhaitez exclure". Dans la fenêtre supplémentaire qui s'ouvre, vous pouvez choisir les données pour lesquelles vous souhaitez restreindre l'accès.
Considérons quelques exemples de mise en place de restrictions pour réaliser la tâche : Vous devez restreindre la permission du groupe "Invité" à la page "Compte personnel" et aux attributs "Prix" et "Remise personnelle".
Exemple 1 - Restriction d'accès du groupe Invité à certaines pages.
Pour cela, ouvrez en mode édition le groupe "Invité". Ensuite, ouvrez l'onglet "Permissions" et dans le tableau des permissions créées, trouvez "Extraction de tous les objets de la page contenant des informations sur le produit sous forme de tableau".
attentionDans le groupe "Invité", cet accès existe par défaut, si votre groupe ne l'a pas, vous devez créer un nouvel accès. Pour cela, cliquez sur le bouton "Créer un accès", dans la fenêtre modale, choisissez les paramètres suivants : Section API - pages Chemin - "Extraction de tous les objets de la page contenant des informations sur le produit sous forme de tableau".
Ensuite, indiquez "Sans restrictions". Et ouvrez la liste des pages que vous souhaitez restreindre, pour cela, cliquez sur le bouton "Sélectionnez les données dont vous avez besoin". Indiquez la restriction pour la page "Compte personnel".
N'oubliez pas, après avoir sélectionné les pages, d'indiquer l'option "Exclure" et "Permission finale" si nécessaire, si les droits peuvent être hérités.
Voici à quoi devrait ressembler toute la configuration :
La configuration des accès est maintenant terminée, après avoir cliqué sur le bouton "Enregistrer", tous les utilisateurs non autorisés recevront seulement 3 pages au lieu de quatre.
Exemple 2 - Restriction d'accès du groupe Invité à certains attributs.
Pour cela, ouvrez en mode édition le groupe "Invité". Ensuite, ouvrez l'onglet "Permissions" et dans le tableau des permissions créées, trouvez "Extraction de tous les attributs avec des données du jeu d'attributs".
attentionDans le groupe "Invité", cet accès existe par défaut, si votre groupe ne l'a pas, vous devez créer un nouvel accès. Pour cela, cliquez sur le bouton "Créer un accès", dans la fenêtre modale, choisissez les paramètres suivants : Section API - ensembles d'attributs Chemin - "Extraction de tous les attributs avec des données du jeu d'attributs".
Ensuite, indiquez "Sans restrictions". Et ouvrez la liste des pages que vous souhaitez restreindre, pour cela, cliquez sur le bouton "Sélectionnez les données dont vous avez besoin". Indiquez la restriction pour les attributs "Prix" et "Remise personnelle".
attentionIci, vous pouvez voir la liste de tous les attributs créés à partir de tous les ensembles d'attributs.
N'oubliez pas, après avoir sélectionné les pages, d'indiquer l'option "Exclure" et "Permission finale" si nécessaire, si les droits peuvent être hérités.
Voici à quoi devrait ressembler toute la configuration :
La configuration des accès est maintenant terminée, après avoir cliqué sur le bouton "Enregistrer", tous les utilisateurs non autorisés recevront des informations limitées lors de la demande d'informations sur le produit.
Exemple 3 - Restriction d'accès du groupe Invité à un bloc.
Pour cela, ouvrez en mode édition le groupe "Invité". Ensuite, ouvrez l'onglet "Permissions" et dans le tableau des permissions créées, trouvez "Extraction de tous les objets de bloc".
attentionDans le groupe "Invité", cet accès existe par défaut, si votre groupe ne l'a pas, vous devez créer un nouvel accès. Pour cela, cliquez sur le bouton "Créer un accès", dans la fenêtre modale, choisissez les paramètres suivants : Section API - blocs Chemin - "Extraction de tous les objets de bloc".
Ensuite, indiquez "Sans restrictions". Et ouvrez la liste des blocs que vous souhaitez restreindre, pour cela, cliquez sur le bouton "Sélectionnez les données dont vous avez besoin".
attentionIci, vous pouvez voir la liste de tous les blocs créés à partir de tous les groupes de blocs.
N'oubliez pas, après avoir sélectionné le bloc, d'indiquer l'option "Exclure" et "Permission finale" si nécessaire, si les droits peuvent être hérités.
Voici à quoi devrait ressembler toute la configuration :
La configuration des accès aux blocs est maintenant terminée.
– Extraction de tous les objets utilisateurs – administrateurs. – Extraction de tous les objets des ensembles d'attributs. – Extraction de tous les attributs avec des données du jeu d'attributs. – Extraction de tous les objets de la page contenant des informations sur le produit sous forme de tableau. – Extraction de tous les objets de blocs. – Extraction de tous les objets de formulaires. – Retour de toutes les souscriptions aux produits. – Extraction de tous les objets du dépôt de commandes. – Recherche de tous les objets avec le statut du produit. – Extraction de tous les objets de modèles avec filtrage par types. – Extraction de tous les objets d'aperçu de modèles. – Obtention de toutes les collections.
Après avoir sélectionné les données à exclure, deux nouvelles options apparaîtront : "Exclure" - cette option indique que les données sélectionnées doivent être exclues. "Droit final" - ce droit n'est pas hérité dans toute la chaîne de groupes enfants (l'option devient disponible uniquement si l'option "Exclure" est sélectionnée).
Le choix des conditions supplémentaires dépend du chemin sélectionné et n'est pas toujours disponible. Lorsqu'un tel choix est disponible, il est marqué par "Exceptions disponibles pour sélection".
Dans le bloc Options supplémentaires de la fenêtre des droits, il y a une case à cocher Vérification IP.
Par défaut, les nouveaux droits vont dans la section "Droits non utilisés", pour les activer, il suffit de les sélectionner en cochant la case à gauche du nom.
Pour ouvrir l'éditeur, utilisez le bouton 
Pour supprimer, utilisez 
Compréhension des droits d'accès
Les droits d'accès sont des réglages détaillés qui définissent quelles actions un groupe peut effectuer sur des ressources spécifiques. Ils sont organisés par sections API et peuvent être précisés davantage à l'aide de conditions.
Recherche de droits dans le tableau
La recherche des droits nécessaires dans le tableau se fait en saisissant du texte dans le champ Search permission, en sélectionnant les sections API nécessaires dans le sélecteur API Section et les filtres Show only unused (uniquement les droits non utilisés) et Only routes with available exceptions (uniquement les chemins pour lesquels des exceptions sont disponibles).
Droits finaux
L'onglet des droits finaux est un tableau informatif avec filtrage par sections API pour simplifier la recherche.