cancel
Showing results for 
Search instead for 
Did you mean: 

désactiver la fonction create Site

jean
Champ in-the-making
Champ in-the-making
Bonjour,
Je viens de "récupérer" une installation Alfresco et je dois maintenant la personnaliser et l'administrer…
Je suis totalement débutant sur ce produit.

Version installée: Community 3.3
OS: Ubuntu Server 10.04 LTS


Bien qu'ayant suivi les instructions données dans les posts suivants:
https://forums.alfresco.com/fr/viewtopic.php?f=14&t=4488
https://forums.alfresco.com/fr/viewtopic.php?f=11&t=3266&start=0&hilit=createSite
https://forums.alfresco.com/fr/viewtopic.php?f=11&t=3266

Je n'arrive pas à désactiver l'accès à la fonction "Créer un site" pour les users autres que admin, dans la barre de menu "Sites" qui apparaît en haut de l'écran, en dessus de
"Tableau de bord".

Après avoir modifié les fichiers mentionnés dans les post ci-dessus, soit, sur mon installation:

/opt/alfresco/tomcat/webapps/ROOT/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/components/header/header.get.html.ftl
/opt/alfresco/tomcat/webapps/ROOT/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/components/dashlets/user-welcome.get.html.ftl
/opt/alfresco/tomcat/webapps/ROOT/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/components/dashlets/my-sites.get.html.ftl
Je constate que le dashlet "Mes Sites" situé dans la page n'affiche plus le menu "Créer un site".
(Dashlet qui est ajouté à la page via le bouton "Configurer le tableau de bord utilisateur" puis le bouton "Ajouter des dashlets")
Donc pour le dashlet librement configurable sur la page c'est ok.

Par contre, impossible de le désactiver dans la barre de menu "Sites".

si je modifie le fichier :  /opt/alfresco/tomcat/webapps/ROOT/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/components/header/header.get.html.ftl
comme ceci:
<#if !user.isGuest>
devient:
<#if user.name=='admin'>
C'est toute la barre de menu qui disparaît …
Je l'ai donc réactivé, en espérant que les 2 autres fichiers suffiraient à modifier le menu "Sites" mais ca ne fonctionne pas.

partie modifiée dans le fichier: (my-sites.get.html.ftl)

<div class="dashlet my-sites">
   <div class="title">${msg("header.mySites")}</div>
   <div class="toolbar flat-button">
<#if user.isAdmin> <a href="#" id="${args.htmlid}-createSite-button" class="theme-color-1">${msg("link.createSite")}</a> </#if>
      <input id="${args.htmlid}-type" type="button" name="type" value="${msg("filter.all")}" />
      <select id="${args.htmlid}-type-menu">
         <option value="all">${msg("filter.all")}</option>
         <option value="sites">${msg("filter.sites")}</option>
         <option value="favSites">${msg("filter.favSites")}</option>
         <option value="docWorkspaces">${msg("filter.docWorkspaces")}</option>
         <option value="meetWorkspaces">${msg("filter.meetWorkspaces")}</option>
      </select>
   </div>
partie modifiée dans le fichier: (user-welcome.get.html.ftl)

      <div class="detail-list-item last-item">
         <h4 class="theme-color-2">${msg("header.customiseDashboard")}</h4>
         <div>${msg("text.customiseDashboard")}</div>
         <div><a href="${url.context}/page/customise-user-dashboard" class="theme-color-2">${msg("link.customiseDashboard")}</a></div>
      </div>
      <div class="detail-list-item last-item">
<#if user.name=='admin'>
         <h4 class="theme-color-2">${msg("header.createSite")}</h4>
         <div>${msg("text.createSite")}</div>
         <div><a id="${el}-createSite-button" href="#" class="theme-color-2">${msg("link.createSite")}</a></div>
</#if>
      </div>
Question: la dernière entrée de menu "last-item" est justement l'option "createSite".
Je l'ai dupliquée sur les 2 dernières entrées pour gérer le cas d'un login utilisateur. Celà pourrait-il créer un problème ?

Par avance, merci pour votre aide, je patauge péniblement …  :shock:

Jean
8 REPLIES 8

michaelh
Champ on-the-rise
Champ on-the-rise
Bonjour,

Depuis qq versions déjà (3.4.x), ce genre de chose est disponible à travers la gestion des droits. C'est d'ailleurs expliqué dans l'un des liens que vous citez.
Etes-vous certain de vouloir débuter avec une version si ancienne ? L’intérêt est pour le moins limité.

Pour rappel, on en est à la 4.0 désormais.

jean
Champ in-the-making
Champ in-the-making
Bonjour,

Depuis qq versions déjà (3.4.x), ce genre de chose est disponible à travers la gestion des droits. C'est d'ailleurs expliqué dans l'un des liens que vous citez.

Bonjour et merci pour votre réponse.
Vous parlez certainement du lien suivant, je suppose:
Pour une version 3.4 : http://wiki.alfresco.com/wiki/Site_Service#Controlling_who_can_create_sites, cela ne masque pas le bouton de création de site mais renvoie une erreur lors de la tentative de création du site si l'utilisateur n'a pas les droits suffisants.
Je pense que passer de la 3.3  à la 4.0 est un upgrade majeur…
Conseillez-vous de passer 3.3, 3.4…4.0 ou un upgrade direct depuis la 3.3 à la 4.0 est-il envisageable sans trop de soucis ?
J'ai vu que maintenant, pour la 4.0 c'est plutôt Postgresql qui est proposé en standard.
Et, sachant que sur mon installation existante, il y a du mysql et une synchronisation avec un ActiveDirectory, j'aimerais si possible ne pas tout "casser" et récupérer l'existant…

Bonne soirée

Jean

michaelh
Champ on-the-rise
Champ on-the-rise
Pour la mise à jour, tout est résumé ici.
http://docs.alfresco.com/4.0/index.jsp?topic=%2Fcom.alfresco.enterprise.doc%2Fconcepts%2Fch-upgrade....
Vous y verrez par exemple que passer de 3.3 à 4.0 est un chemin direct.

Au passage, rien ne vous oblige à changer de SGBDR.
Le fait que postgreSQL soit proposé par défaut ne change rien au fait que tout fonctionne parfaitement avec MySQL. Ne pas confondre choix et obligation.
http://docs.alfresco.com/4.0/index.jsp?topic=%2Fcom.alfresco.enterprise.doc%2Fconcepts%2Fintro-db-se...

jean
Champ in-the-making
Champ in-the-making
Bonjour,

Finalement, après mûre réflexion nous allons complètement réinstaller le système sur une machine dédiée.
Le système actuel avait été installé pour évaluer le produit … sur une machine virtuelle de type vmware… Je vous laisse imaginer les performances…
Ce système n'a jamais réellement tourné en production, donc il sera plus propre de repartir sur du "neuf"

Je vais installer la nouvelle solution sur une Debian Squeeze.
Pour la release Alfresco, j'imagine qu'il vaut mieux se contenter de la release actuelle, soit la 4.0.c, sauf erreur.

Ou puis-je utiliser la suivante: http://dev.alfresco.com/downloads/nightly/dist/alfresco-community-4.0.d-installer-linux-x64.bin
sans soucis ?

Merci encore pour vos informations

Jean

jean
Champ in-the-making
Champ in-the-making
Bonjour,

Depuis qq versions déjà (3.4.x), ce genre de chose est disponible à travers la gestion des droits. C'est d'ailleurs expliqué dans l'un des liens que vous citez.
Etes-vous certain de vouloir débuter avec une version si ancienne ? L’intérêt est pour le moins limité.

Pour rappel, on en est à la 4.0 désormais.

Bonjour,
voilà qui est fait, je suis passé à la 4.0.d.
Tout les fonctions standard semblent fonctionnent correctement, y compris la gestion des droits, appliquée selon la documentation suivante:
http://wiki.alfresco.com/wiki/Site_Service#Controlling_who_can_create_sites
Bon, je ne voudrais pas paraître "pinailleur" mais lorsqu'un utilisateur standard essaie de créer un site, le message suivant apparaît:

Echec de la création du site
Echec de la création du site car cette URL est déjà utilisée

Alors que le site n'existe pas…
Dans le log alfresco, lors de la tentative de création du site:
11:22:27,646 ERROR [org.springframework.extensions.webscripts.AbstractRuntime] Exception from executeScript - redirecting to status template error: 02080005 Wrapped Exception               (with status template): 02080124 Failed to execute script 'classpath*:alfresco/templates/webscripts/org/alfresco/repository/site/sites.post.json.js': 02080123 Access refusé.                Vous n'avez pas la permission de réaliser cette opération.
org.springframework.extensions.webscripts.WebScriptException: 02080005 Wrapped Exception (with status template): 02080124 Failed to execute script 'classpath*:alfresco/templat              es/webscripts/org/alfresco/repository/site/sites.post.json.js': 02080123 Access refusé.  Vous n'avez pas la permission de réaliser cette opération.
Ce qui est clair et précis… Alors que le message affiché dans l'interface web l'est nettement moins !

Question: serait-il possible de "rediriger" le message du log "Vous n'avez pas la permission…" dans l'interface web ? (sans devoir coder une "usine à gaz" pour le faire… :roll: )

Meilleures salutations

Jean

jayjayecl
Confirmed Champ
Confirmed Champ
Bonjour, vous pourriez même soulever ce "bug" auprès de l'équipe de développement grâce à la plateforme Jira (si vos recherches vous montrent,qu'il n'a pas encore été recensé)
Http://issues.alfresco.com

Le correctif pourra ainsi profiter à tous !
Smiley Happy

jean
Champ in-the-making
Champ in-the-making
Bonjour, vous pourriez même soulever ce "bug" auprès de l'équipe de développement grâce à la plateforme Jira (si vos recherches vous montrent,qu'il n'a pas encore été recensé)
Http://issues.alfresco.com

Le correctif pourra ainsi profiter à tous !
Smiley Happy
Bonjour,
Merci pour l'info !
Je ne connaissais pas ce lien, bien sûr, si la résolution de ce problème pouvait ainsi profiter à tout le monde alors tant mieux  :wink:
Voilà donc qui est fait: https://issues.alfresco.com/jira/browse/ALF-13286

Meilleures salutations

Jean

jayjayecl
Confirmed Champ
Confirmed Champ
Bravo !
Notez qu'en tant que créateur du ticket, vous devriez être automatiquement notifié de ses mises-à-jour par email …
Je vais le suivre également (fonction watch)