05-28-2018 06:08 AM
Bonjour,
s'il vous plait j'ai un petit soucis au niveau de la personnalisation de l'interface d'Alfresco 5.2, j'ai besoin de désactiver les liens 'gérer les règles' 'gérer les aspects' 'gérer les droits d’accès' pour les non-admin.
je vous remercie d'avance.
07-31-2018 06:09 AM
merci Yann Coulon c'est bon j'ai trouvé la solution
dans la classe java j'ai oublié de définir le package
package org.alfresco.web.evaluator;
en suite j'ai modifier le bean:
<bean id="evaluator.doclib.action.IsAdminUser" class="org.alfresco.web.evaluator.IsAdminUserEvaluator" />
05-30-2018 06:20 AM
Bonjour!
Je pense que cela peut être la base >> Removing View in Browser action in Alfresco 4.2 | In just five minutes…
Cris.
06-03-2018 04:42 AM
Bonjour,
Merci pour votre réponse, j'ai essayé déjà cette solution mais cela désactive la fonction pour tous les utilisateurs y compris Admin, et moi je veux que la gestion des règles fonctionne seulement pour les admins, est ce c'est possible ??
Merci.
06-04-2018 05:29 AM
Regardez le premier commentaire >>
Great example. Is there a way to disable Actions based on role, e.g. Consumer?
Hi, I didn’t faced that problem but here some insights.
Here you can see the default permissions model for all the document actions:http://deepak-keswani.blogspot.com.es/2012/03/user-roles-and-permissions-in-alfresco_4833.html
I guess if I had to change a default permission for a certain action, I would write something like:
<action id="...
<permissions>
<permission allow="true">Finalise</permission>
</permissions>
...
</action>
Above is just an example, you’d need to replace “Finalise” for another permission that Cosumers don’t have.
Hope this helps.
Je vous recommande d'étendre les autorisations et seul le manager le voit >> Defining permissions | Alfresco Documentation
Cris.
06-10-2018 04:34 AM
bonjour,
j'ai vu les liens que vous m'avez envoyés
j'ai un autre souci, je trouve pas le fichier permissionDefinitions.xml pour gérer les permissions, et y a d'autre fichier aussi que je n'ai pas !!! par ex: public-services-security-context.xml
d’après mes recherches normalement il faut déployer des fichiers .jar qui se trouvent tomcat/webapps/alfresco/WEB-INF/lib ,
mais quel fichier il faut le déployer???? et comment ???
avez vous une idée concernant ces fichiers ???
Merci pour vos réponses.
imene
06-11-2018 03:47 AM
Bonjour,
Pour masquer une actions, pas besoin de se rendre dans ces fichiers, un simple "evaluator" fera l'affaire : Evaluators | Alfresco Documentation.
Il est d'ailleurs fortement déconseiller de toucher au fichiers natif d'Alfresco sous peine de se voir compliquer la tâche de mise à jour vers une nouvelle version.
Pour votre besoin, je vous conseille la lecture de ce post : Display documentlibrary action for admins only qui fournit un example d'implémentation pour l'évaluateur en question.
Y.
07-29-2018 05:57 AM
Bonjour,
Merci pour votre aide
j'ai suivi la procedure de création d'un évaluateur "IsUserAdmin" mais quand j'ajoute le bean dans le fichier tomcat/shared/classes/alfresco/web-extension/custom-slingshot-application-context.xml
<bean id="evaluator.doclib.action.isAdminUser" class="org.alfresco.web.evaluator.doclib.action.IsAdminUserEvaluator" />
alfresco log m'affiche des erreurs :
2018-07-29 10:51:42,469 WARN [context.support.XmlWebApplicationContext] [localhost-startStop-1] Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.CannotLoadBeanClassException: Error loading class [org.alfresco.web.evaluator.IsAdminUserEvaluator] for bean with name 'evaluator.doclib.action.isAdminUser' defined in file [/1x13/apps/alfresco/tomcat/shared/classes/alfresco/web-extension/custom-slingshot-application-context.xml]: problem with class file or dependent class; nested exception is java.lang.NoClassDefFoundError: org/alfresco/web/evaluator/IsAdminUserEvaluator (wrong name: IsAdminUserEvaluator)
2018-07-29 10:51:42,470 ERROR [web.context.ContextLoader] [localhost-startStop-1] Context initialization failed
org.springframework.beans.factory.CannotLoadBeanClassException: Error loading class [org.alfresco.web.evaluator.IsAdminUserEvaluator] for bean with name 'evaluator.doclib.action.isAdminUser' defined in file [/1x13/apps/alfresco/tomcat/shared/classes/alfresco/web-extension/custom-slingshot-application-context.xml]: problem with class file or dependent class; nested exception is java.lang.NoClassDefFoundError: org/alfresco/web/evaluator/IsAdminUserEvaluator (wrong name: IsAdminUserEvaluator)
at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1281)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:575)
at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1347)
at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:913)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:617)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:938)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479)
at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:410)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:306)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:112)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5118)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5634)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:899)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:679)
at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1966)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NoClassDefFoundError: org/alfresco/web/evaluator/IsAdminUserEvaluator (wrong name: IsAdminUserEvaluator)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)...
avez vous une idée concernant ce problème!?
merci.
07-31-2018 03:03 AM
Bonjour,
Le message indique que la classe "org/alfresco/web/evaluator/IsAdminUserEvaluator" n'est pas chargé.
Pourriez-vous décrire les étapes suivit ?
Y.
07-31-2018 03:49 AM
Bonjour,
voila les étapes que j'ai suivi:
1- créer un évaluator IsAdminUserEvaluator.java
import org.alfresco.web.evaluator.BaseEvaluator;
import org.springframework.extensions.surf.RequestContext;
import org.json.simple.JSONObject;
import org.springframework.extensions.surf.support.ThreadLocalRequestContext;
import org.springframework.extensions.webscripts.connector.User;
import org.springframework.extensions.surf.extensibility.HandlesExtensibility;
public class IsAdminUserEvaluator extends BaseEvaluator {@Override
public boolean evaluate(JSONObject jsonObject) {
RequestContext rc = ThreadLocalRequestContext.getRequestContext();
User user = rc.getUser();return (user != null && user.isAdmin());
}}
2- exécuter .java afin d'obtenir le fichier IsAdminUserEvaluator.class que je l'ai copier dans "tomcat/webapps/share/WEB-INF/classes/org/alfresco/web/evaluator/doclib/action"
3- ajouter ces lignes dans le fichier share-config-custom.xml
<config evaluator="string-compare" condition="DocLibActions">
<actions> <action id="folder-manage-rules">
<evaluator>evaluator.doclib.action.IsAdminUser</evaluator>
</action></actions>
</config>
4- ajouter le bean pour définit mon évaluateur dans le fichier tomcat/webapps/share/WEB-INF/classes/alfresco/slingshot-documentlibrary-context.xml
vu que tout les évaluateurs sont définit dans ce fichier
<bean id="evaluator.doclib.action.isAdminUser" class="org.alfresco.web.evaluator.doclib.action.IsAdminUserEvaluator" />
5- relancer le serveur
ps: j'ai essayé aussi de mettre le bean dans le fichier shared/classes/alfresco/web-extension/custom-slingshot-application-context.xml et ca donne une erreur 404 et n'affiche aucune erreur dans mon alfresco log
voila tt les étapes et merci.
07-31-2018 06:09 AM
merci Yann Coulon c'est bon j'ai trouvé la solution
dans la classe java j'ai oublié de définir le package
package org.alfresco.web.evaluator;
en suite j'ai modifier le bean:
<bean id="evaluator.doclib.action.IsAdminUser" class="org.alfresco.web.evaluator.IsAdminUserEvaluator" />
Tags
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.