From ea9f167089ace8fba77338911fbf9305d2a07284 Mon Sep 17 00:00:00 2001 From: Jaxom99 <30865395+Jaxom99@users.noreply.github.com> Date: Mon, 6 Apr 2020 16:07:14 +0200 Subject: [PATCH 1/2] add french groups page --- groups_and_permissions_fr.md | 176 +++++++++++++++++++++++++++++++++++ 1 file changed, 176 insertions(+) create mode 100644 groups_and_permissions_fr.md diff --git a/groups_and_permissions_fr.md b/groups_and_permissions_fr.md new file mode 100644 index 00000000..73c40696 --- /dev/null +++ b/groups_and_permissions_fr.md @@ -0,0 +1,176 @@ +Groupes et permissions +=========================== + +Vous pouvez accéder à l'interface de gestion des *groupes et des permissions* depuis la webadmin +en allant dans la section "Utilisateurs" et en cliquant sur le bouton correspondant : + +![](./images/button_to_go_to_permission_interface_fr.png) + +Gestion des groupes +--------------- +Le mécanisme de groupe peut être utilisé pour définir des groupes d'utilisateurs qui peuvent ensuite être utilisés pour restreindre les autorisations pour les applications et autres services (tels que l'email ou xmpp). Notez qu'il n'est *pas* obligatoire de créer un groupe pour ce faire : vous pouvez également restreindre l'accès à une application ou à un service de manière individuelle. + +L'utilisation de groupes est cependant utile pour la sémantique, par exemple si vous hébergez plusieurs groupes d'amis, des associations ou des entreprises sur votre serveur, vous pouvez créer des groupes comme "association1" et "association2" et ajouter les membres de chaque association au groupe concerné. + + +### Groupes par défaut +Par défaut, deux groupes spéciaux sont créés : +- `all_users`, qui contient tous les utilisateurs enregistrés sur YunoHost, +- `visitors`, c'est-à-dire les personnes qui consultent le serveur sans être connectées. + +Vous ne pouvez pas changer le contenu de ces groupes, seulement les permissions qui leur sont accordées. + +### Lister les groupes existants +Les groupes existants sont listés en haut de la page *groupes et autorisations*. + +![](./images/groups_default-groups.png) + +Pour obtenir la liste des groupes existants en CLI : + + +```bash +$ yunohost user group list +groups: + all_users: + members: + - alice + - bob + - charlie + - delphine +``` + + +### Créer un nouveau groupe +Pour créer un nouveau groupe, il suffit de cliquer sur le bouton "Nouveau groupe" en haut de la page. Vous ne pouvez choisir qu'un nom formé de lettres (majuscules et minuscules) et d'espaces. Le groupe est créé vide et sans aucune permissions. + +![](./images/groups_button-new-group.png) + +Dans la CLI, pour créer un nouveau groupe appelé `yolo_crew`, il faut utiliser + +```bash +$ yunohost user group create yolo_crew +``` + +### Mettre à jour un groupe +Ajoutons un premier utilisateur à ce groupe : dans le panneau du groupe, cliquez sur le bouton "ajouter un utilisateur" et faites défiler jusqu'à l'utilisateur souhaité, puis cliquez dessus. + +![](./images/groups_button-add-user.png) + +Pour supprimer un utilisateur, cliquez sur la croix à côté de son nom d'utilisateur, dans le panneau du groupe. + +![](./images/groups_button-remove-user.png) + +En CLI, utilisez la commande suivante pour ajouter `charlie` et `delphine` au groupe `yolo_crew` : + +```bash +$ yunohost user group update yolo_crew --add charlie delphine +``` + +(De même, `--remove` peut être utilisé pour retirer des membres d'un groupe) + +Dans la liste des groupes, nous devrions voir : + +```bash +$ yunohost user group list +groups: + all_users: + members: + - alice + - bob + - charlie + - delphine + yolo_crew: + members: + - charlie + - delphine +``` + +### Supprimer un groupe + +Pour supprimer un groupe, cliquez sur la croix rouge en haut à droite du panneau du groupes. Une confirmation vous sera demandée. + +![](./images/groups_button-delete-group.png) + +Pour supprimer le groupe `yolo_crew` dans CLI, vous pouvez exécuter + +```bash +$ yunohost user group delete yolo_crew +``` + +Gestion des permissions +-------------------- + +Le mécanisme de permissions permet de restreindre l'accès aux services (par exemple mail, xmpp, ...) et aux applications, ou même à des parties spécifiques des applications (par exemple l'interface d'administration de wordpress). + +### Liste des permissions + +La page des groupes liste les permissions données à chaque groupe, y compris les groupes spéciaux `all_users` et `visitors`. + +![](./images/groups_default-with-permissions.png) + +Pour répertorier les permissions et les accès correspondants en CLI : +```bash +$ yunohost user permission list +permissions: + mail.main: + allowed: all_users + wordpress.admin: + allowed: + wordpress.main: + allowed: all_users + xmpp.main: + allowed: all_users +``` +Ici, nous constatons que tous les utilisateurs enregistrés peuvent utiliser le courrier électronique, xmpp, et accéder au blog wordpress. Cependant, personne ne peut accéder à l'interface d'administration de wordpress. + +Plus de détails peuvent être affichés en ajoutant l'option `--full` qui affichera la liste des utilisateurs correspondant aux groupes autorisés, ainsi que les urls associées à une permission (pertinent pour les applications web). + +### Ajouter des permissions à un groupe ou un utilisateur + +Pour ajouter une permission à un groupe, il suffit de cliquer sur le bouton "+" dans le panneau du groupe, de faire défiler jusqu'à la permission souhaitée, puis de cliquer dessus. + +![](./images/groups_add-permission-group.png) + +Pour permettre à un groupe d'accéder à l'interface d'administration de wordpress via la CLI : + +```bash +$ yunohost user permission update wordpress.admin --add yolo_crew +``` + +Notez que vous pouvez également autoriser un seul utilisateur, en utilisant le panneau spécifique en bas de la page. + +![](./images/groups_add-permission-user.png) + +ou en CLI : + +```bash +$ yunohost user permission update wordpress.admin --add alice +``` + +Et maintenant, nous pouvons voir que YoloCrew et Alice ont tous deux accès à l'interface d'administration de Wordpress : + +```bash +$ yunohost user permission list + [...] + wordpress.admin: + allowed: + - yolo_crew + - alice + [...] +``` + +Notez que, par exemple, si nous voulons restreindre la permission pour le courrier électronique +afin que seul Bob soit autorisé à envoyer des courriels, nous devons également supprimer `all_users` +de la permission, en la supprimant du panneau de groupe `all_users`, ou en CLI : + +```bash +$ yunohost user permission update mail --remove all_users --add bob +``` + +La webadmin émettra un avertissement si vous définissez une permission qui est remplacée par une permission plus large. +![](./images/groups_alerte-permission.png) + +Notes pour les packageurs d'applications +------------------------ + +[Voir la version anglaise de cette page](groups_and_permissions). From bec9cce40d7738672f8cac610825a206d4079d59 Mon Sep 17 00:00:00 2001 From: Jaxom99 <30865395+Jaxom99@users.noreply.github.com> Date: Mon, 6 Apr 2020 16:09:31 +0200 Subject: [PATCH 2/2] groups interface button FR --- .../button_to_go_to_permission_interface_fr.png | Bin 0 -> 31012 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 images/button_to_go_to_permission_interface_fr.png diff --git a/images/button_to_go_to_permission_interface_fr.png b/images/button_to_go_to_permission_interface_fr.png new file mode 100644 index 0000000000000000000000000000000000000000..3d524b5edb684f99758552046712f069e118e03c GIT binary patch literal 31012 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