Hola, antes de nada agradecer a todos vuestra colaboración, he utilizado mucha ayuda de esta web para mi instalación de Alfresco y espero algún día poder ayudar a otros usuarios. Tengo un problema que no he podido solucionar y me gustaría saber si es posible.
Tengo instalado Alfresco Community Edition General Release 201711
He configurado mi alfresco-global.properties para que puedan acceder mis usuarios ya registrado en Active Directory, esta es mi configuración:
authentication.chain=alfrescoNtlm1:alfrescoNtlm,ldap1:ldap
ldap.authentication.active=true
ldap.authentication.java.naming.provider.url=ldap://XXX.XXX.XXX.XXX:389
ldap.authentication.userNameFormat=%s@XXX.es
ldap.synchronization.active=false
Entran perfectamente con su usuario y contraseña, y se crea las credenciales en Alfresco
Mi pregunta es la siguiente, ¿Seria posible que una vez creados los usuarios en Alfresco provenientes de LDAP los pudiera meter automáticamente en un solo grupo, por ejemplo "PUBLICO" y asignarles una cuota predefinida, por ejemplo 1000 MB?
Gracias
Solved! Go to Solution.
Creo que sería mejor utilizar un Behaviour Java, pero probablemente un simple script JS sea más útil.
Crea un fichero setGroupAndQuota.js en la carpeta Repositorio > Data Dictionary > Scripts con el siguiente contenido:
var userName = document.properties["cm:name"];
var group = people.getGroup("GROUP_PUBLICO");
var user = people.getPerson(userName);
people.addAuthority(group, user);
people.setQuota(user, "10240000"); // 10 MB
Crea una regla en Repositorio > User Homes
Cada vez que se cree un usuario, se establecerán las propiedades. No obstante, esto se aplicará tanto a usuarios de LDAP como a usuarios locales.
Hola.
Para añadir usuários en los grupos, tienes que utilizar la sincronización con LDAP.
Para la cuota, yo conozco este addon GitHub - jottley/alfresco-defaultquota-policy: Automatically exported from code.google.com/p/alfresc..., pero es muy viejo, e no creo que va a ser compatible con la versión que estás utilizando.
Entiendo que puedo sincronizar los grupos con los mismos que existan en el LDAP, pero lo que necesito es incorporar todos los nuevos usuarios a un mismo grupo "PUBLICO", no a los que tengan en LDAP.
El addon es muy antiguo y no funciona en versiones actuales.
Podrías hacerlo con un Behaviour (requiere programación en Java) o con una regla (requiere programación en JavaScript). ¿Alguna preferencia?
Ninguna, confio en tu experiencia para que me recomiendes la que creas mejor
Creo que sería mejor utilizar un Behaviour Java, pero probablemente un simple script JS sea más útil.
Crea un fichero setGroupAndQuota.js en la carpeta Repositorio > Data Dictionary > Scripts con el siguiente contenido:
var userName = document.properties["cm:name"];
var group = people.getGroup("GROUP_PUBLICO");
var user = people.getPerson(userName);
people.addAuthority(group, user);
people.setQuota(user, "10240000"); // 10 MB
Crea una regla en Repositorio > User Homes
Cada vez que se cree un usuario, se establecerán las propiedades. No obstante, esto se aplicará tanto a usuarios de LDAP como a usuarios locales.
He creado el Script con el siguiente contenido:
var userName = document.properties["cm:name"];
var group = people.getGroup("PUBLICO");
var user = people.getPerson(userName);
people.addAuthority(group, user);
people.setQuota(user, "1073741824"); // 1 GB
Mi grupo tiene los siguientes nombres:
Identificador: *
PUBLICO
Nombre a mostrar: *
PUBLICO
He creado la regla.
Pero ahora no me deja acceder a Alfresco y me da el siguiente error:
2017-12-12 14:40:37,645 ERROR [org.springframework.extensions.webscripts.AbstractRuntime] [http-apr-8080-exec-12] Exception from executeScript: 111215515 Failed to execute script 'workspace://SpacesStore/b6b5443e-b34e-476b-bee5-6002bd83bfd9': ParentGroup is a mandatory parameter
org.alfresco.scripts.ScriptException: 111215515 Failed to execute script 'workspace://SpacesStore/b6b5443e-b34e-476b-bee5-6002bd83bfd9': ParentGroup is a mandatory parameter
Caused by: java.lang.IllegalArgumentException: ParentGroup is a mandatory parameter
Para Alfresco grupos, roles y usuarios son "autoridades", por eso...
var userName = document.properties["cm:name"];
var group = people.getGroup("GROUP_PUBLICO");
var user = people.getPerson(userName);
people.addAuthority(group, user);
people.setQuota(user, "1073741824"); // 1 GB
Correcto, pude entrar con el usuario, se creo, y se incluyo en el grupo PUBLICO
Pero no registro la cuota de usuario correctamente
Adjunto captura
Acabo de pegar este mismo script
var userName = document.properties["cm:name"];
var group = people.getGroup("GROUP_PUBLICO");
var user = people.getPerson(userName);
people.addAuthority(group, user);
people.setQuota(user, "1073741824"); // 1 GB
en una CE 201707 y funciona sin problemas.
¿Algún error en tu log?
Discussions about Alfresco Content Services and Alfresco Process Services in Spanish
Related:
By using this site, you are agreeing to allow us to collect and use cookies as outlined in Alfresco’s Cookie Statement and Terms of Use (and you have a legitimate interest in Alfresco and our products, authorizing us to contact you in such methods). If you are not ok with these terms, please do not use this website.