MODX gestion des média sources
Création d'un média source MODX pour les clients permettant de limiter l'accès aux fichiers de fonctionnement de MODX
  • 03 octobre 2016
  • Steeve

Pour ce tutoriel vous n’avez pas besoin d’avoir de connaissance particulière.

Ce tutoriel est réalisé sur MODX Revolution 2.3.5-pl (traditional)

Maintenant que vous avez pu voir et comprendre comment créer un accès restreint au gestionnaire de site pour limiter ce a quoi ont accès dans le gestionnaire du site vos clients ou vos éditeurs, nous allons voir comment leurs donner un accès afin qu’ils puissent gérer leurs média (images, vidéos, PDF, MP3, etc...). Mais cet accès doit être restreint car il ne faudrait pas qu’ils puissent modifier des fichiers servants au bon fonctionnement du site Internet et/ou du gestionnaire de site web MODX.

Pour créer ce nouveau « média source », vous devez vous rendre dans Média > Media source.

menu média source

Dans la nouvelle fenêtre vous trouverez une liste de tous les média sources déjà créé. Pour le moment vous n’avez que celui par défaut nommé « filesystem ».

liste des médias sources

Cliquez sur le bouton « Créer un nouveau Média Source » pour en créer un nouveau, et remplissez comme ci-dessous :

Nom : Client Media Source
Description : Le média source pour l'accès client.
Type de source : Système de fichier

Vous avez deux choix pour le système de fichiers (Système de fichiers et Amazon S3) qui sont les principaux système déjà créé pour vous.

Le système de fichiers est le système de fichiers classique, les fichiers seront hébergés sur votre espace web, au même endroit que la ou sont les fichiers qui constituent votre site Internet.

Le système de fichiers Amazon S3 vous permet d’héberger les fichiers utilisés sur votre site par Amazon. L’avantage est que quand un internaute appel une des vos pages de votre site web, il n’y a pas que le serveur qui héberge votre site Internet qui envoie les fichiers, il y aussi les fichiers qui seront hébergés par Amazon. Ceci seront donc envoyés par le serveur d’Amazon ce qui sera un avantage pour le temps de chargement de vos pages web. Si vous souhaitez plus d’information sur l’hébergement de fichiers avec Amazon S3 c’est par ici : Amazon S3

Vous pouvez d’ailleurs créer votre propre système de fichier si vous désirez, ou rajouter Dropbox ou Google Drive comme type de système de fichiers. Voici un tutoriel en Anglais réalisé par Mark Hamstra pour créer un  système de fichiers avec Dropbox : Dropbox Media Source

Dans mon exemple je vous montre comment utiliser le média source avec le système de fichiers classique (fichiers sur votre espace web).

créer un nouveau média sources

Vous n’avez plus qu’à cliquer sur « enregistrer » pour créer le nouveau « Média Source ». Une fois enregistré, nous allons a présent le configurer. Cliquez droit sur le nouveau média source fraichement créé et choisissez « Mettre à jour le Media Source ».

liste des médias sources

Ci-dessous la liste de toutes les propriétés disponibles pour notre média sources :

  • basePath 
  • basePathRelative (oui/non)
  • baseUrl
  • baseUrlRelative (oui/non)
  • allowedFileTypes
  • imageExtensions
  • thumbnailType
  • thumbnailQuality
  • skipFiles

média source client

Dans mon exemple je voudrais que les client n’est accès qu’a un seul dossier nommé « upload », lui même situé dans le dossier de MODX « assets ». Ils pourront à terme créer des sous dossiers, ajouter des fichiers mais ce uniquement à l’intérieur du dossier « upload », selon les configurations que vous avez fait lors de la création de votre accès limité pour les clients. Vous pourrez toujours modifier leurs droits d’accès en modifiant votre « Accès client ».

Dans un premier temps vous devez donc créer le fameux dossier « upload » dans le dossier « assets » en passant par FileZilla ou par le « Gestionnaire de fichiers ».
Allez dans Média > Gestionnaire de fichiers.

menu média source gestionnaire de fichier

Faites un clique droit sur le dossier « assets » puis cliquez sur « Créer un répertoire ici ».

menu créer un répertoire ici

Dans la fenêtre pop-up remplissez le champ « nom » avec « upload » et normalement si vous avez cliquez au bonne endroit précédemment vous devriez avoir « assets » dans le champ «  Répertoire parent ».

configuration du répertoire client

Vous devriez voir le nouveau dossier créé comme dans mon image ci-dessous.

nouveau répertoire upload

Pour des raisons d’organisation, il est préférable de créer plusieurs dossiers dans le dossier « upload » afin que tous les fichiers que votre client pourrait rajouter ne soient pas tous au même endroit. Pour ma part je créé plusieurs dossiers nommés « images », « pdf », « videos »... Et je conseil a mes clients de créer des sous dossiers dans le dossier « images » selon leurs besoins pour toujours plus d’organisation.

organisation dossier média source client

Maintenant retourné dans la fenêtre de mise à jour de votre nouveau média source « Client Media Source » pour le configurer comme ci-dessous.

basePath : /assets/upload/
basePathRelative : oui
baseUrl : assets/upload/
baseUrlRelative : oui
allowedFileTypes :   txt,html,htm,xml,js,css,zip,rar,mp3,mp4,
aac,wav,wmv,avi,mpg,mpeg,pdf,doc,docx,xls,
xlsx,ppt,pptx,jpg,jpeg,png,gif,ico,bmp
imageExtensions : jpg,jpeg,png,gif
thumbnailType : PNG
thumbnailQuality : 90
skipFiles : .svn,.git,_notes,nbproject,.idea,.DS_Store

Vous pouvez choisir de ne pas autoriser autant de fichiers que je l’ai fait ou choisir une qualité des miniatures différente de la mienne si vous le désirez.

Attention au copier/coller avec la liste des fichiers du champ allowedFileTypes !
N’oubliez pas d’enregistrer sinon vous allez perdre votre travail !

média source client configure

Vous avez désormais un média source pour vos clients. Ci-dessous le nouveau média source dans l’onglet « Fichiers » du manager de MODX.

média source client dans l'onglet fichiers

Ci-dessous le nouveau média source dans le système de fichiers du manager de MODX.

média source client dans le gestionnaire de fichiers

A cette étape votre client a accès aux deux média sources existant. Notre but étant de ne pas lui laisser accès au média source par défaut nommé « Filesystem », pour qu’il ne puisse pas modifier des fichiers essentiels au bon fonctionnement de MODX nous allons devoir le limiter.

Pour limiter votre client pour qu’il est accès seulement au « média source client », il faut aller dans « Listes des contrôles d’accès » dans le menu « paramètres » en haut à droite.

menu listes des controles d'acces

Dans la fenêtre « Listes des contrôles d’accès », onglet « Groupes d’utilisateurs », cliquez droit sur votre « Accès client » pour le mettre à jour.

mettre à jour le groupe utilisateur

Puis vous devez ajouter dans l’onglet « Autorisations » et le sous onglet « Accès Media Source » le média sources auquel votre client n’aura pas accès. Je sais c’est un peu capillotracté (tiré par les cheveux) de devoir limiter au lieu de laisser accéder. Pour ce faire dans l’onglet « Autorisations » et le sous onglet « Accès Media Source » cliquez sur « Ajouter un Media Source » et remplissez comme ceci :

  • Source : Filesystem
  • Rôle minimal : Super user – 0
  • Règle d'accès : Media Source Admin

Et cliquez sur « enregistrer » pour sauvegarder cette nouvelle configuration. 

ajouter média source limité

Pui cliquez sur encore sur « enregistrer » pour sauvegarder le « groupe d’utilisateurs ».

enregistrer groupe utilisateurs

Par sécurité vider le cache de toutes les permissions avant de tester votre configuration client en cliquant sur Administration > Vides le cache des permissions.

vider le cache des permissions modx

Vous n’avez plus qu’à tester votre configuration. Pour éviter toutes confusions, j’ouvre un nouveau navigateur, j’accède à l’interface administrateur de MODX de mon site web avec les codes client. Puis un fois dans l’interface je clique sur Média > Gestionnaire de fichiers. Vous devriez arriver directement dans le dossier « upload » et ne voir que les sous dossiers que vous avez créé. Si vous essayez de changer de média source, vous ne devriez trouver que celui auquel votre client à accès.

média sources client

liste média source client

Contrairement ou vous, l’administrateur, vous avez accès à tous les média sources disponibles.

liste média source admin

Voilà ce tutoriel sur MODX est fini, j’espère qu’il vous sera utile. Merci de partager un maximum si tel est le cas afin de me donner un coup de main au développement de la communauté de MODX.

 

Partagez cet article

A propos de l'auteur

Steeve

Passionné d’informatique, de Design, de développement d'application et du Web en général (participation au start-up weekend, hackathon, dev Var, formation Google...), j’ai créé ce site afin de partager mes connaissances sur mon système de gestion de contenu préféré MODX. En espérant participer au développement de la communauté.

Commentaires (1)

Raphael - jeudi 08 mars 2018

Bonjour,

Merci pour ce tuto.

Dans le cadre d'une utilisation de Modx pour gérer plusieurs sites (1 site parents et plusieurs sites enfants gérés par une unique installation de Modx). Peut on créer plusieurs "Media-source" pour différents groupes d'utilisateurs (un groupe d'utilisateurs gérer un site) ? SVP Merci
Raphael






Tags autorisés : <b><i><br> Ajouter un nouveau commentaire :