Utilisation du magasin de fichiers WebDAV

Vous pouvez utiliser WebDAV afin d'utiliser les thèmes du portail.

Présentation de WebDAV et URL du point d'entréee

WebDAV est défini par RFC2518 comme une structure d'extension HTTP avec un point d'entrée pour accéder à des données hiérarchiques et les gérer. Par exemple, dans des systèmes de gestion du contenu. WebDAV stocke les données dans des collections. Vous pouvez utiliser les données dans une interface utilisateur similaire à celle d'un système de fichiers. Un dossier représente une collection WebDAV. Divers outils permettent d'intégrer des ressources WebDAV à un système de fichiers client. Les utilisateurs peuvent utiliser ces outils pour afficher et modifier des ressources auxquelles ils ont accès à l'aide de WebDAV.

Remarque : Le TAI (Trust Association Interceptor) Authentification de base HTTP doit être activé pour pouvoir utiliser WebDAV dans HCL Portal. Ce comportement est activé par défaut. Consultez les liens associés pour plus d'informations.
Vous pouvez obtenir l'URL du point d'entrée du magasin de fichiers WebDAV via le document accessible à l'aide de l'URL /wps/mycontenthandler/!ut/p/model/service-document. Ce document contient le point d'accès de niveau supérieur suivant :
<app:collection href="/webdav/!ut/p/dav/fs-type1/">
                              <atom:title>fs-type1</atom:title>
                              <app:categories fixed="yes">
                              . . . . . 
                              <atom:category term="webdav"/>
                              <atom:category term="filestore"/>
                              . . . . . 
                              </app:categories>
                              </app:collection>
                         
L'URL de point d'entrée des thèmes se présente comme suit :
http://server:port/PortalServer_root/mycontenthandler/dav/fs-type1/
Exemples d'URL pour les thèmes :
http://www.my_company.com:10027/wps/mycontenthandler/dav/fs-type1/
  • Pour les ressources associées à des thèmes :
    http://my_company.com:10027/wps/mycontenthandler/dav/fs-type1/themes/
  • Pour les ressources associées à des habillages :
    http://my_company.com:10027/wps/mycontenthandler/dav/fs-type1/skins/
Pour vous authentifier sur un portail virtuel, vous pouvez identifier le portail virtuel cible soit par son nom d'hôte soit par son contexte d'URL. Exemples :
  • Pour vous authentifier sur le portail virtuel identifié par le nom d'hôte vp.mycompany.com, puis vous connecter au dossier des thèmes, utilisez le point d'entrée d'URL suivant :
    http://vp.mycompany.com:10027/wps/mycontenthandler/dav/fs-type1/themes/
  • Pour vous authentifier sur le portail virtuel identifié par le contexte d'URL vp1, puis vous connecter au dossier des thèmes, utilisez le point d'entrée d'URL suivant :
    http://localhost:10027/wps/mycontenthandler/vp1/!ut/p/dav/fs-type1/themes/

Structure du dossier et noms de dossiers réservés

Les points d'entrée WebDAV fs-type1 fournissent les dossiers racine prédéfinis suivants utilisés par les thèmes :
  • themes
  • skins
  • layout-templates
  • common-resources
  • iwidgets
Les points d'entrée WebDAV fs-type1 fournissent également l'ensemble suivant de dossiers principaux prédéfinis. Vous pouvez y accéder à l'aide de la fonction de modèle distant fournie par l'API d'activation :
  • public
  • users
Les points d'entrée WebDAV fs-type1 fournissent le dossier interne suivant :
  • system
Aucun des dossiers mentionnés ici ne peut être supprimé, pas même par un administrateur.

Les deux groupes de dossiers sont différents dans les règles de contrôle d'accès qui gèrent l'accès aux ressources contenues dans ces dossiers. Pour plus de détails, reportez-vous aux sections ci-après.

Dossiers de thème

La liste suivante répertorie la structure de dossiers utilisée pour les thèmes. Chaque dossier représente une collection WebDAV. Vous administrez l'accès en écriture aux dossiers de thème à l'aide de la ressource virtuelle THEME MANAGEMENT fournie par le contrôle d'accès au portail.
/themes
Utilisez ce dossier pour stocker les ressources associées aux thèmes, par exemple les modèles de thème. En général, chaque sous-dossier représente un thème.
/skins
Utilisez ce dossier pour stocker les habillages généraux. En général, chaque sous-dossier de ce dossier représente un habillage global.
/layout-templates
Utilisez ce dossier pour stocker les modèles des présentations pouvant être utilisées par les différents thèmes. En général, chaque sous-dossier représente un modèle de présentation.
/common-resources
Utilisez ce dossier pour partager des ressources communes à différents thèmes de façon à les gérer toutes au même emplacement.
/iwidgets
Utilisez ce dossier pour y placer des widgets.
WebDAV interdit la suppression de ces dossiers. Même les utilisateurs disposant des droits administrateur ne peuvent pas supprimer ces dossiers et les données qu'ils contiennent.

Gestion du contrôle d'accès pour les dossiers de thèmes Page Builder

  • Tous les utilisateurs ont un droit d'affichage à toutes les ressources contenues dans ces dossiers. Il inclut à la fois les utilisateurs anonymes et les utilisateurs authentifiés.

    Pour accorder aux utilisateurs un accès en écriture sur les ressources contenues dans ces dossiers, affectez aux utilisateurs le rôle MANAGER sur la ressource virtuelle THEME MANAGEMENT dans le contrôle d'accès du portail. Les gestionnaires peuvent créer, modifier ou supprimer les ressources de ce type.

Affectation du contrôle d'accès aux utilisateurs et aux gestionnaires pour les ressources de thème dans WebDAV

Pour autoriser les utilisateurs non-administrateurs à mettre à jour ou modifier des fichiers existants, procédez comme suit :
  1. Ouvrez une invite de commande et accédez au répertoire wp_profile_root/ConfigEngine.
  2. Exécutez la tâche ConfigEngine suivante.
    • AIX® HP-UX Linux Solarisz/OS® :
    • IBM® i: ConfigEngine.sh export-nodes -DWasPassword=wpsadmin -DPortalAdminPwd=wpsadmin -Dquery="/filestore/fs-type1/themes" -Dwp.content.repository.output.dir="c:\temp\jcr"
    • Windows : ConfigEngine.bat export-nodes -DWasPassword=wpsadmin -DPortalAdminPwd=wpsadmin -Dquery="/filestore/fs-type1/themes" -Dwp.content.repository.output.dir="c:\temp\jcr"
  3. Editez le fichier qui a été exporté dans le répertoire c:\temp\jcr. Ajoutez le rôle de gestionnaire à un utilisateur ou à un groupe en ajoutant le code suivant :
    • Code pour ajouter le rôle de gestionnaire à un utilisateur :
      <icm:role icm:actions="actionset:Manager,actions:Traverse,View,Edit,Add_Child,Delete,Join,">                                            
                                                   <icm:principal icm:name="uid=testuser,o=defaultwimfilebasedrealm" icm:type="USER" />                                                  
                                                   </icm:role>
    • Code pour ajouter le rôle de gestionnaire à un groupe :
      <icm:role icm:actions="actionset:Manager,actions:Traverse,View,Edit,Add_Child,Delete,Join,">
                                                   <icm:principal icm:name="cn=mygroup,o=defaultWIMFileBasedRealm" icm:type="USER_GROUP" />
                                                   </icm:role>
    Ajoutez-le après l'élément <icm:owner>. Voir le fragment de code complet ci-après.
    <icm:node>
                                       <icm:access>                                                         
                                       <icm:wps>                                                           
                                       <icm:owner>                                                        
                                       <icm:principal icm:name="uid=wpsadmin,o=defaultwimfilebasedrealm" icm:type="USER" />                                                   
                                       </icm:owner>                                                       
                                       <icm:role icm:actions="actionset:Manager,actions:Traverse,View,Edit,Add_Child,Delete,Join,">                                             
                                       <icm:principal icm:name="uid=testuser,o=defaultwimfilebasedrealm" icm:type="USER" />                                                   
                                       </icm:role>                                                          
                                       </icm:wps>                                                          
                                       </icm:access>                                                        
                                       </icm:node>       
  4. Importez le fichier à l'aide de la tâche ConfigEngine suivante.
    • AIX® HP-UX Linux Solarisz/OS®:
    • IBM® i: ConfigEngine.sh import-nodes -DWasPassword=wpsadmin -DPortalAdminPwd=wpsadmin -Dwp.content.repository.input.dir="c:\temp\jcr"
    • Windows : ConfigEngine.bat import-nodes -DWasPassword=wpsadmin -DPortalAdminPwd=wpsadmin -Dwp.content.repository.input.dir="c:\temp\jcr"

Autres dossiers

La liste suivante répertorie les dossiers supplémentaires. Chaque dossier représente une collection WebDAV. La règle de contrôle d'accès relative à ces collections est codée en dur comme décrit pour chaque dossier.
/public
Tous les utilisateurs authentifiés disposent d'un accès en lecture et écriture à ce dossier.
Les utilisateurs anonymes disposent d'un accès en lecture seulement.
/users
Tous les utilisateurs authentifiés disposent d'un accès en lecture seulement à ce dossier.
Les utilisateurs anonymes disposent d'un accès en lecture seulement.
/users/user_name
Seul l'utilisateur user_name peut accéder à ces fichiers. Ce dossier est créé pour l'utilisateuruser_name lorsque celui-ci accède au magasin de fichiers WebDAV pour la première fois.
Remarque : Pour simplifier la compréhension des noms de dossier, le portail utilise l'ID utilisateur pour les noms des dossiers user_name. Le portail utilise en interne l'ID VMM de l'utilisateur afin que les données ne soient pas déplacées en cas de changement du nom d'utilisateur.
Si vous souhaitez identifier à l'aide d'un programme le point d'entrée d'URL à un dossier pour l'utilisateur actif, vous pouvez effectuer une recherche dans le document de service. Le point d'accès des données spécifiques à l'utilisateur se présente comme suit :
<app:collection href="/webdav/!ut/p/dav/fs-type1/users/<username>">
                              <atom:title>fs-type1-user</atom:title>
                              <app:categories fixed="yes">
                              . . . . .
                              <atom:category term="webdav"/>
                              <atom:category term="filestore"/>
                              <atom:category term="user"/>
                              . . . . .    
                              </app:categories>
                              </app:collection>
/users/user_name/public

L'utilisateur user_name dispose d'un accès en lecture et en écriture sur ce dossier. Ce dossier comporte du contenu que l'utilisateur user_name a partagé avec d'autres utilisateurs. Mappage du contrôle d'accès du portail : hérité.

Tous les utilisateurs authentifiés disposent d'un accès en lecture à ce dossier.

Les utilisateurs anonymes disposent d'un accès en lecture à ce dossier.

Tous les autres sous-dossiers de /users/user_name ne sont accessibles que par l'utilisateur user_name.

/system
Le dossier system est réservé aux informations internes du système. Les administrateurs peuvent afficher ce dossier dans WebDAV. Les autres utilisateurs du portail ne peuvent pas afficher ce dossier. Mappage du contrôle d'accès du portail : Aucun.

Contrôle du cache de librairie de fichiers

La librairie de fichiers WebDAV prend en charge l'envoi de valeurs de délai d'attente pour les entrées de l'en-tête de cache HTTP.

Vous pouvez utiliser des expressions régulières pour indiquer une valeur de délai d'expiration pour les éléments contenus dans la structure de dossiers de la librairie de fichiers qui répondent à ces expressions régulières. Vous devez ajouter les deux propriétés personnalisées suivantes au fournisseur d'environnement de ressource WP Config Service avec les propriétés ey = value suivantes :
filestore.cache.expiration.id.re=regular expression 
                         filestore.cache.expiration.id.seconds=value
La valeur d'ID peut être une chaîne arbitraire. Elle est utilisée uniquement pour établir le mappage entre une expression régulière et sa valeur de délai d'attente associée. Si plusieurs expressions régulières correspondent à une ressource de librairie de fichiers, la valeur de délai d'expiration utilisée est la maximale. Exemples :
  1. Tous les éléments sous le dossier /themes ont un délai d'expiration de 1 800 secondes :
    filestore.cache.expiration.0.re=themes/.* 
                                       filestore.cache.expiration.0.seconds=1800
  2. Tous les éléments d'un type de ressource donné, par exemple jpg ou gif, ont un délai d'expiration de 6000 secondes :
    filestore.cache.expiration.1.re=.*\.jpg|.*\.gif 
                                       filestore.cache.expiration.1.seconds=6000
    Tous les fichiers css du dossier themes ont un délai d'expiration de 8000 secondes :
    filestore.cache.expiration.2.re=themes/.*\.css 
                                       filestore.cache.expiration.2.seconds=8000

Méthodes HTTP prises en charge

Le magasin de fichiers WebDAV prend en charge les méthodes HTTP suivantes :
PROPFIND
Cette méthode permet aux utilisateurs du portail de rechercher des informations sur la hiérarchie des ressources, comme la structure d'une collection WebDAV par exemple. Les utilisateurs peuvent également rechercher des informations sur des ressources, telles que leur nom, leur taille et la date de dernière modification par exemple.
MKCOL
Cette méthode permet aux utilisateurs de créer de nouveaux dossiers, qui sont des collections WebDAV.
GET
Cette méthode permet aux utilisateurs de récupérer des ressources sur lesquelles ils disposent au moins des droits d'accès d'affichage.
TETE
Cette méthode permet aux utilisateurs de récupérer des en-têtes HTTP de ressources sur lesquelles ils disposent au moins des droits d'accès d'affichage.
POST
Cette méthode permet aux utilisateurs de télécharger de nouvelles ressources.
SUPPRIMER
Cette méthode permet aux utilisateurs de supprimer des ressources ou dossiers, à savoir des collections WebDAV.
PUT
Cette méthode permet aux utilisateurs de mettre à jour des ressources, des documents ou images d'un dossier par exemple, dans un dossier.
COPIER
Cette méthode permet aux utilisateurs de copier des ressources ou dossiers, à savoir des collections WebDAV.
DEPLACER
Cette méthode permet de déplacer ou de renommer des ressources ou dossiers, à savoir des collections WebDAV.