
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-11-2017 12:31 PM
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
- Labels:
-
Language Groups
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-12-2017 08:20 AM
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
- Cuando: Se crean o entran elementos en esta carpeta
- Si se cumplen todos los criterios: Contenido del tipo o subtipo es Carpeta
- Realizar acción: Ejecutar script setGroupAndQuota.js
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.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-12-2017 09:02 AM
Para Alfresco grupos, roles y usuarios son "autoridades", por eso...
- Cuando haces referencia a un grupo debes prefijarlo con GROUP_
- Cuando haces referencia a un rol debes prefijarlo con ROLE_
- Cuando haces referencia a un usuario no es requerido prefijo

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-12-2017 09:08 AM
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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-12-2017 09:16 AM
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?

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-12-2017 09:23 AM
Creando el usuario desde las herramientas de administración si funciona todo correctamente
Pero cuando crea el usuario desde el login de un usuario del LDAP solo funciona ponerse el grupo, la cuota se queda vacía
En el log de errores no aparece nada
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-12-2017 10:44 AM
Correcto, acabo de replicar el comportamiento que describes. Probablemente el ciclo de creación de esa carpeta home es diferente para la sincronización por LDAP y en ese momento las propiedades están protegidas (immutables).
Quizá sea posible lanzar el Script para que actúe en otro momento en el caso de LDAP...

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-14-2017 06:32 AM
He estado buscando otras situaciones donde poder utilizar el Script pero no he encontrado alguna que funcione correctamente.
Como seria hacerlo con Behaviour?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-14-2017 06:35 AM
Yo también le di alguna vuelta y no encontré tampoco la combinación.
Tienes un ejemplo de un behaviour Java que "hace cosas" cuando se crea un usuario aquí: https://github.com/keensoft/alfresco-user-space-template/blob/master/user-space-template-repo/src/ma...
Y aquí tienes cómo programar un behaviour: Alfresco Learning - Programming a Behavior (Spanish) - YouTube
