<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Autorisation on slash-root.fr</title><link>https://beta.slash-root.fr/tags/autorisation/</link><description>Recent content in Autorisation on slash-root.fr</description><generator>Hugo -- gohugo.io</generator><language>fr-fr</language><lastBuildDate>Sun, 24 Apr 2022 13:42:07 +0200</lastBuildDate><atom:link href="https://beta.slash-root.fr/tags/autorisation/index.xml" rel="self" type="application/rss+xml"/><item><title>Nextcloud : Group Folders</title><link>https://beta.slash-root.fr/nextcloud-group-folders/</link><pubDate>Thu, 05 May 2022 08:00:20 +0200</pubDate><guid>https://beta.slash-root.fr/nextcloud-group-folders/</guid><description>&lt;img src="https://beta.slash-root.fr/nextcloud-group-folders/cover.png" alt="Featured image of post Nextcloud : Group Folders" /&gt;&lt;h2 id="contexte"&gt;&lt;a href="#contexte" class="header-anchor"&gt;&lt;/a&gt;Contexte
&lt;/h2&gt;&lt;p&gt;Nextcloud est orienté utilisateurs.&lt;/p&gt;
&lt;p&gt;C'est à dire que si l'on souhaite partager des données à d'autres utilisateurs et/ou groupes d'utilisateurs, ces partages se retrouveront à la racine (par défaut) de chaque espace de travail des utilisateurs sans conserver toute l'arborescence.&lt;/p&gt;
&lt;p&gt;Un exemple concret :&lt;/p&gt;
&lt;p&gt;Un utilisateur nommé &amp;quot;Jean-Jacques&amp;quot; possède une arborescence comme suit :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="1.png" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;Ce dossier partagé se retrouvera à la racine (par défaut) du Nextcloud des destinataires concernés.&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="2.png" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;L'arborescence complète ne sera pas visible.&lt;/p&gt;
&lt;p&gt;Cela n'est pas adapté si l'on souhaite partager toute une arborescence avec des droits spécifiques et diverses en son sein.&lt;/p&gt;
&lt;p&gt;C'est la que l'application &lt;code&gt;Group Folders&lt;/code&gt; intervient.&lt;/p&gt;
&lt;h2 id="group-folders"&gt;&lt;a href="#group-folders" class="header-anchor"&gt;&lt;/a&gt;Group Folders
&lt;/h2&gt;&lt;h3 id="présentation"&gt;&lt;a href="#pr%c3%a9sentation" class="header-anchor"&gt;&lt;/a&gt;Présentation
&lt;/h3&gt;&lt;p&gt;Group Folders est une application que l'on va pouvoir greffer à Nextcloud.&lt;/p&gt;
&lt;p&gt;Cette application va permettre de configurer des dossiers partagés à un / des groupe(s) d'utilisateurs.&lt;/p&gt;
&lt;p&gt;Ensuite, l'administrateur va pouvoir configurer finement des droits spécifiques (lecture / écriture / partage / quota) sur ces dossiers partagés.&lt;/p&gt;
&lt;p&gt;De plus l'intérêt est qu'avec cette application, les données ne seront plus dépendantes d'un utilisateur. Par exemple si Jean-Jacques est supprimé, toutes ces données seront supprimmées ainsi que les partages qu'il a pu faire.&lt;/p&gt;
&lt;p&gt;Lien vers le projet : &lt;a href="https://github.com/nextcloud/groupfolders"&gt;https://github.com/nextcloud/groupfolders&lt;/a&gt;&lt;/p&gt;
&lt;h3 id="exemple"&gt;&lt;a href="#exemple" class="header-anchor"&gt;&lt;/a&gt;Exemple
&lt;/h3&gt;&lt;p&gt;Dans mon Nextcloud, je possède plusieurs utilisateurs repartis dans les groupes suivant :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Comptabilité&lt;/li&gt;
&lt;li&gt;Direction&lt;/li&gt;
&lt;li&gt;Technique&lt;/li&gt;
&lt;li&gt;Invité&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Je souhaite déployer une arborescence de ce type au sein de mon Nextcloud :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;├── compta &lt;span style="color:#75715e"&gt;# Accessible en écriture au groupe comptabilité et en lecture au groupe direction&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;│ ├── note_de_frais
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;│ └── salaires
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;├── direction &lt;span style="color:#75715e"&gt;# Accessible en écriture au groupe direction&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;│ ├── courriers
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;│ └── projets
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;├── public &lt;span style="color:#75715e"&gt;# Accessible en écriture à tous les groupes sauf au groupe invité qui sera en lecture seule&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;│ ├── documents
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;│ └── entreprise
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;└── technique &lt;span style="color:#75715e"&gt;# Accessible en écriture au groupe technique et en lecture au groupe direction&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ├── manuels
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; └── procedures
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="installation"&gt;&lt;a href="#installation" class="header-anchor"&gt;&lt;/a&gt;Installation
&lt;/h3&gt;&lt;p&gt;Pour installer Group Folders, il faut se connecter en tant qu'&lt;code&gt;admin&lt;/code&gt; sur la plateforme Nextcloud puis se rendre dans les &lt;code&gt;Applications&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Ensuite, rechercher &lt;code&gt;Group Folders&lt;/code&gt; puis &lt;code&gt;Télécharger et activer&lt;/code&gt; :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="3.png" alt="image-20220422122832933" /&gt;&lt;/p&gt;
&lt;h3 id="configuration"&gt;&lt;a href="#configuration" class="header-anchor"&gt;&lt;/a&gt;Configuration
&lt;/h3&gt;&lt;p&gt;Toujours en tant qu'&lt;code&gt;admin&lt;/code&gt;, se rendre dans les &lt;code&gt;Paramètres&lt;/code&gt; d'&lt;code&gt;Administration&lt;/code&gt; puis &lt;code&gt;Dossiers du groupe&lt;/code&gt; :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="4.png" alt="image-20220423111910824" /&gt;&lt;/p&gt;
&lt;p&gt;Créer dans un 1er temps les dossiers qui figureront à la racine des utilisateurs :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="5.png" alt="image-20220423112429345" /&gt;&lt;/p&gt;
&lt;p&gt;Ensuite, y associer les groupes d'utilisateurs désirés avec les permissions adéquates :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="6.png" alt="image-20220423112646312" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Ici pour le dossier &lt;code&gt;compta&lt;/code&gt;, le groupe &lt;code&gt;Comptabilité&lt;/code&gt; pourra lire et écrire et le groupe &lt;code&gt;Direction&lt;/code&gt; aura simplement un droit de lecture. Naturellement, je refuse que ces données soient partageables par les utilisateurs qui y auront accès.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Il est possible d'y définir un quota maximal :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="7.png" alt="image-20220423113054906" /&gt;&lt;/p&gt;
&lt;p&gt;Puis, définir qui pourra gérer les droits de ce dossier :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="8.png" alt="image-20220423113327341" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Il faut que ce soit un utlisateur / groupe qui ait accès au dossier.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Configurer l'intégralité des autorisations souhaitées comme suit :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="9.png" alt="image-20220423113730955" /&gt;&lt;/p&gt;
&lt;p&gt;Bien entendu, il faut ensuite créer les sous-dossiers dans chaque &lt;code&gt;Group Folders&lt;/code&gt; dans l'espace &lt;code&gt;Fichiers&lt;/code&gt; de Nextcloud.&lt;/p&gt;
&lt;p&gt;Maintenant, les utilisateurs verront uniquement ce à quoi ils doivent avoir accès à la racine de leur Nextcloud.&lt;/p&gt;
&lt;p&gt;Par exemple, pour mon utilisateur Pierre qui fait partie du groupe Comptabilité :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="10.png" alt="image-20220423114901387" /&gt;&lt;/p&gt;
&lt;h3 id="autorisation-avancée"&gt;&lt;a href="#autorisation-avanc%c3%a9e" class="header-anchor"&gt;&lt;/a&gt;Autorisation avancée
&lt;/h3&gt;&lt;p&gt;Il est possible d'aller encore plus loin dans les autorisations.&lt;/p&gt;
&lt;p&gt;Je pourrais souhaiter qu'un utilisateur qui fait partie d'un groupe (ayant des autorisations d'écriture) ait finalement q'un droit de lecture (un stagiaire par exemple). Pour cela dans les détails d'un dossier, des règles d'autorisations avancées peuvent être appliquées :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="11.png" alt="image-20220423115612503" /&gt;&lt;/p&gt;
&lt;p&gt;Ici, je dis que Pierre du groupe Comptabilité peut finalement que lire et non modifier ce qui se trouve dans ce dossier :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="12.png" alt="image-20220423115750654" /&gt;&lt;/p&gt;
&lt;h2 id="ligne-de-commande"&gt;&lt;a href="#ligne-de-commande" class="header-anchor"&gt;&lt;/a&gt;Ligne de commande
&lt;/h2&gt;&lt;p&gt;L'intégralité de la configuration peut être réalisé en ligne de commande via &lt;code&gt;occ&lt;/code&gt; :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;occ groupfolders:create &amp;lt;name&amp;gt;&lt;/code&gt; → create a group folder&lt;/li&gt;
&lt;li&gt;&lt;code&gt;occ groupfolders:delete &amp;lt;folder_id&amp;gt; [-f|--force]&lt;/code&gt; → delete a group folder and all its contents&lt;/li&gt;
&lt;li&gt;&lt;code&gt;occ groupfolders:expire&lt;/code&gt; → trigger file version and trashbin expiration (see &lt;a href="https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/file_versioning.html"&gt;Nextcloud docs for versionning&lt;/a&gt; and &lt;a href="https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/trashbin_configuration.html"&gt;Nextcloud docs for the trash bin&lt;/a&gt; for details)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;occ groupfolders:group &amp;lt;folder_id&amp;gt; &amp;lt;group_id&amp;gt; [-d|--delete] [write|share|delete]&lt;/code&gt; → assign groups and their rights to a group folder&lt;/li&gt;
&lt;li&gt;&lt;code&gt;occ groupfolders:list&lt;/code&gt; → list configured group folders&lt;/li&gt;
&lt;li&gt;&lt;code&gt;occ groupfolders:permissions&lt;/code&gt; → configure advanced permissions (see below for details)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;occ groupfolders:quota &amp;lt;folder_id&amp;gt; [&amp;lt;quota&amp;gt;|unlimited]&lt;/code&gt; → set a quota for a group folder&lt;/li&gt;
&lt;li&gt;&lt;code&gt;occ groupfolders:rename &amp;lt;folder_id&amp;gt; &amp;lt;name&amp;gt;&lt;/code&gt; → rename a group folder&lt;/li&gt;
&lt;li&gt;&lt;code&gt;occ groupfolders:scan &amp;lt;folder_id&amp;gt;&lt;/code&gt; → trigger a filescan for a group folder&lt;/li&gt;
&lt;li&gt;&lt;code&gt;occ groupfolders:trashbin:cleanup &lt;/code&gt; → empty the trashbin of all group folders&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="conclusion"&gt;&lt;a href="#conclusion" class="header-anchor"&gt;&lt;/a&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;Group Folders permet d'aller beaucoup plus loin dans la gestion des droits que peut le faire naturellement Nextcloud.&lt;/p&gt;
&lt;p&gt;Et surtout, ces données ne sont pas dépendante d'un utilisateur.&lt;/p&gt;
&lt;p&gt;Bien entendu, cela est synchronisable avec les clients desktop Nextcloud Windows, Mac, Linux.&lt;/p&gt;</description></item></channel></rss>