AnsweredAssumed Answered

usuarios y permisos

Question asked by ijr87 on Oct 1, 2010
Latest reply on Oct 22, 2010 by pjcaracuel_2349
buenas, tengo un par de preguntas sobre este tema:

1. He modificado el xml de permisos de alfresco para añadir algunos según mis necesidades, el problema es que cuando los busco mediante la web de alfresco no me salen, solo encuentro los propios de alfresco. hay que modificar algún otro fichero o algo??

2. Una vez creado un usuario me gustaría asignarle uno de estos permisos creados anteriormente con el xml. El código que tengo os lo pongo a continuación, el problema es que no se como llegar a las nuevas propiedades, solo puedo poner las predefinidas de alfresco…


private static void asignarPermisos(String user, String id) throws AccessControlFault, RemoteException
   {
      DMSConnectionAlfresco dms = new DMSConnectionAlfresco();
      ProfileTO profileUser = new ProfileTO();
      profileUser.setUserName("admin");
      profileUser.setPassword("admin");

      AccessControlServiceSoapBindingStub accessControlService = WebServiceFactory.getAccessControlService();
      
      Predicate predicate = new Predicate();
      predicate.setStore(dms.getStore());

      Reference ref = new Reference();
      ref.setStore(dms.getStore());
      ref.setUuid(id);
      predicate.setNodes(new Reference[] { ref });


      ACL[] acl = accessControlService.getACLs(predicate, null);
      ACE[] ace = acl[0].getAces();
      AccessStatus accessStatus = ace[0].getAccessStatus();

      System.out.println(ace[0].getAuthority()); //Retorna 1r usuario que tiene permisos sobre el nodo
      System.out.println(ace[0].getPermission()); //Retorna el permiso especificado para el usuario anterior
      System.out.println(accessStatus.getValue()); //Retorna si tiene acceso o no al nodo

      //Añadir permisos
      ACE[] aces1 = new ACE[]{new ACE(user, Constants.READ, AccessStatus.acepted)};

      ACL[] acls1 = accessControlService.addACEs(predicate, aces1);

   }

Outcomes