PROFILAZIONE

cancel
Showing results for 
Search instead for 
Did you mean: 
vmalfresco
Active Member

PROFILAZIONE

Ciao a tutti,

ho creato un utente e vorrei impersonificare l'utente come amministatore quando eseguo alcune operazioni,

ho provato con il seguente codice java:

public static void impersonate()throws Exception {

   AuthenticationUtil.runAsSystem(
      new AuthenticationUtil.RunAsWork<Object>() {
        public Object doWork() throws Exception {


            SessionFactory sessionFactory = SessionFactoryImpl.newInstance();
            Map<String, String> parameter = new HashMap<String, String>();
            parameter.put(SessionParameter.USER, "testProfilazione");
            parameter.put(SessionParameter.PASSWORD, "testProfilazione");
            parameter.put(SessionParameter.ATOMPUB_URL, ALFRSCO_ATOMPUB_URL);
            parameter.put(SessionParameter.BINDING_TYPE,BindingType.ATOMPUB.value());


            
            List<Repository> repositories=sessionFactory.getRepositories(parameter);
            session=repositories.get(0).createSession();
            AuthenticationUtil lu = new AuthenticationUtil();
            lu.afterPropertiesSet();


            AuthenticationUtil.setRunAsUser("testProfilazione");
            AuthenticationUtil.setFullyAuthenticatedUser("testProfilazione");

             //QUI SI ROMPE
            Document newDocument = (Document)session.getObjectByPath("/xx/xxx/documentLibrary/nuovo documento             test");
            

            return null;

         }
      }
   );


}

purtroppo ricevo la seguente eccezione appena tento di accedere al documento:

Exception in thread "main" org.apache.chemistry.opencmis.commons.exceptions.CmisPermissionDeniedException: Permission denied: 0605372730 Accesso Negato.  Non si dispone di permessi appropriati per eseguire questa operazione.

potete aiutarmi?