<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: IMPERSONATE api alfresco in Alfresco Forum</title>
    <link>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97096#M28438</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;hello,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt; I tried to run all the examples he gave me but an exception is thrown:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;Exception in thread "main" org.apache.chemistry.opencmis.commons.exceptions.CmisUnauthorizedException: Unauthorized&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;this is the code:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;public static void impersonateFour() {&lt;BR /&gt; &lt;BR /&gt; &lt;BR /&gt; final Object result = AuthenticationUtil.runAs( new AuthenticationUtil.RunAsWork&amp;lt;Object&amp;gt;() {&lt;BR /&gt; public ArrayList&amp;lt;String&amp;gt; doWork() throws Exception {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ArrayList&amp;lt;String&amp;gt; a = new ArrayList&amp;lt;String&amp;gt;();&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;//WITH THIS&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AuthenticationUtil.setRunAsUserSystem();&lt;BR /&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;//OR WITH THIS&lt;BR /&gt;// final String currentUser = AuthenticationUtil.getFullyAuthenticatedUser();&lt;BR /&gt;// if (!currentUser.equals("test")) {&lt;BR /&gt;// &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AuthenticationUtil.setRunAsUser("test");&lt;BR /&gt;// &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AuthenticationUtil.setFullyAuthenticatedUser("test");&lt;BR /&gt;// }&lt;BR /&gt; &lt;BR /&gt; SessionFactory sessionFactory = SessionFactoryImpl.newInstance();&lt;BR /&gt; Map&amp;lt;String, String&amp;gt; parameter = new HashMap&amp;lt;String, String&amp;gt;();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;// I'm BOUND&amp;nbsp;&amp;nbsp;PUT AN USER NAME AND PASSWORD?&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;/////////parameter.put(SessionParameter.USER, "userTest");&lt;BR /&gt;/////////parameter.put(SessionParameter.PASSWORD, "password");&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;&lt;BR /&gt; parameter.put(SessionParameter.ATOMPUB_URL, ALFRSCO_ATOMPUB_URL);&lt;BR /&gt; parameter.put(SessionParameter.BINDING_TYPE,BindingType.ATOMPUB.value());&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;//&amp;nbsp; WHEN CALL &lt;SPAN&gt;getRepositories(&lt;SPAN style="background-color: #f8f9fa;"&gt;parameter)&amp;nbsp; THROW EXCEPTION&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="background-color: #f8f9fa;"&gt;Unauthorized&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;&lt;BR /&gt; List&amp;lt;Repository&amp;gt; repositories=sessionFactory.getRepositories(parameter);&amp;nbsp; &amp;nbsp;//&amp;nbsp; &amp;lt;&amp;lt;-- ?&lt;BR /&gt; session=repositories.get(0).createSession();&lt;BR /&gt; &lt;BR /&gt; return a;&lt;BR /&gt; }&lt;BR /&gt; &lt;BR /&gt; }, AuthenticationUtil.getSystemUserName()&lt;BR /&gt; );&lt;BR /&gt; }&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CAN YOU SAY WHY?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;THANK YOU SO MUCH&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 05 Jul 2019 08:39:31 GMT</pubDate>
    <dc:creator>vmalfresco</dc:creator>
    <dc:date>2019-07-05T08:39:31Z</dc:date>
    <item>
      <title>IMPERSONATE api alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97090#M28432</link>
      <description>Hello,I'm trying to do the impersonation through the alfresco API in java.I found a guide that makes this example&lt;IMG id="smileytongue" class="emoticon emoticon-smileytongue" src="https://migration33.stage.lithium.com/i/smilies/16x16_smiley-tongue.png" alt="Smiley Tongue" title="Smiley Tongue" /&gt;ublic String impersonate(String username) {&amp;nbsp;String currentUser = AuthenticationUtil.getFullyAuthenticatedUser();&amp;nbsp;&amp;nbsp;if (currentUser == null || !currentUser.equals(username)) {&amp;nbsp;Authenticat</description>
      <pubDate>Mon, 01 Jul 2019 13:10:27 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97090#M28432</guid>
      <dc:creator>vmalfresco</dc:creator>
      <dc:date>2019-07-01T13:10:27Z</dc:date>
    </item>
    <item>
      <title>Re: IMPERSONATE api alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97091#M28433</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The&amp;nbsp;&lt;SPAN style="color: #727174; background-color: #ffffff;"&gt;&lt;STRONG&gt;AuthenticationUtil&lt;/STRONG&gt;&amp;nbsp;class is part of "&lt;EM&gt;&lt;STRONG&gt;alfresco-data-model&lt;/STRONG&gt;&lt;/EM&gt;" jar file. It should be available. Can you check if this jar file is part of your classpath ?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There is another class having same name (&lt;EM&gt;&lt;STRONG&gt;org.springframework.extensions.surf.site.AuthenticationUtil&lt;/STRONG&gt;&lt;/EM&gt;) in &lt;EM&gt;&lt;STRONG&gt;spring-surf&lt;/STRONG&gt;&lt;/EM&gt; jar file and would be part of classpath. Can you also check if you have imported this class by any chance.&amp;nbsp;&lt;/P&gt;&lt;P&gt;You need to import this class : &lt;EM&gt;&lt;STRONG&gt;org.alfresco.repo.security.authentication.AuthenticationUtil&lt;/STRONG&gt; &lt;/EM&gt;after making sure that alfresco-data-model jar file is part of the classpath.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Jul 2019 13:33:30 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97091#M28433</guid>
      <dc:creator>abhinavmishra14</dc:creator>
      <dc:date>2019-07-01T13:33:30Z</dc:date>
    </item>
    <item>
      <title>Re: IMPERSONATE api alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97092#M28434</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;hello, &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;I did as you told me, now it gives me a compilation error on eclipse: &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;"The type net.sf.acegisecurity.Authentication cannot be resolved. It is indirectly referenced from required .class files "&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;line : &amp;nbsp;AuthenticationUtil.setRunAsUser (username);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;and "The method setFullyAuthenticatedUser(String) from the type AuthenticationUtil refers to the missing type Authentication"&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;line:&amp;nbsp;AuthenticationUtil.setFullyAuthenticatedUser(username);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;but i don't know why.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;maybe there is a conflict whit the dependencies between spring and alfresco?&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jul 2019 10:14:55 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97092#M28434</guid>
      <dc:creator>vmalfresco</dc:creator>
      <dc:date>2019-07-02T10:14:55Z</dc:date>
    </item>
    <item>
      <title>Re: IMPERSONATE api alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97093#M28435</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;PRE class="" data-placeholder="Traduzione" dir="ltr" style="color: #222222; background-color: #f8f9fa; border: none; font-size: 16px; padding: 0px 0.14em 0px 0px;"&gt;&lt;SPAN lang="en"&gt;however the problem is to "impersonate",&lt;BR /&gt;can you post me a working code and also the related dependencies to be downloaded from maven? &lt;BR /&gt;will be 10 lines of code more or less&lt;BR /&gt;i don't find a smart and complete guide on alfresco and on the web,&lt;BR /&gt;thank you so much&lt;/SPAN&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jul 2019 10:20:56 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97093#M28435</guid>
      <dc:creator>vmalfresco</dc:creator>
      <dc:date>2019-07-02T10:20:56Z</dc:date>
    </item>
    <item>
      <title>Re: IMPERSONATE api alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97094#M28436</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Valerio,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;take a look at&amp;nbsp;the following&amp;nbsp;great post written by &lt;B&gt;Angel Borroy&lt;/B&gt;, it&amp;nbsp;describes how to implement your own runAs method:&lt;/P&gt;&lt;P&gt;&lt;A href="https://angelborroy.wordpress.com/2015/07/24/alfresco-run-as-system-admin-user-without-credentials/" rel="nofollow noopener noreferrer"&gt;https://angelborroy.wordpress.com/2015/07/24/alfresco-run-as-system-admin-user-without-credentials/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please note that you have to incapsulate the logic of your method inside an atomic unit of work that you will pass to the runAs component. In this way you can use it inside any component of Alfresco such as an action, ECMAScript, WebScripts, Scheduled Jobs and so on.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps &lt;IMG src="https://connect.hyland.com/legacyfs/online/alfresco/emoticons/wink.png" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jul 2019 12:38:51 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97094#M28436</guid>
      <dc:creator>openpj</dc:creator>
      <dc:date>2019-07-02T12:38:51Z</dc:date>
    </item>
    <item>
      <title>Re: IMPERSONATE api alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97095#M28437</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This code works for me:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;import org.alfresco.repo.security.authentication.AuthenticationUtil;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;public final class Impersonate {&lt;/P&gt;&lt;P&gt;private Impersonate(){&lt;BR /&gt; super();&lt;BR /&gt; }&lt;/P&gt;&lt;P&gt;public static String runAsUser(final String userName) {&lt;BR /&gt; final String currentUser = AuthenticationUtil.getFullyAuthenticatedUser();&lt;BR /&gt; if (!currentUser.equals(userName)) {&lt;BR /&gt; AuthenticationUtil.setRunAsUser(userName);&lt;BR /&gt; AuthenticationUtil.setFullyAuthenticatedUser(userName);&lt;BR /&gt; }&lt;BR /&gt; return currentUser;&lt;BR /&gt; } &lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, if you are looking to perform some piece of code/operations&amp;nbsp;which requires admin level permissions or write permissions, then its better to use AuthenticationUtil.&lt;SPAN&gt;RunAsWork method.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Example:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;final Object result = AuthenticationUtil.runAs(&lt;BR /&gt; new AuthenticationUtil.RunAsWork&amp;lt;Object&amp;gt;() {&lt;BR /&gt; public Set&amp;lt;String&amp;gt; doWork() throws Exception {&lt;BR /&gt; .....&lt;BR /&gt; }&lt;/P&gt;&lt;P&gt;}, AuthenticationUtil.getSystemUserName()&lt;BR /&gt;);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Or simply run your whole operation by setting the authentication as system user based on your use case.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AuthenticationUtil.setRunAsUserSystem();&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jul 2019 13:46:01 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97095#M28437</guid>
      <dc:creator>abhinavmishra14</dc:creator>
      <dc:date>2019-07-02T13:46:01Z</dc:date>
    </item>
    <item>
      <title>Re: IMPERSONATE api alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97096#M28438</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;hello,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt; I tried to run all the examples he gave me but an exception is thrown:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;Exception in thread "main" org.apache.chemistry.opencmis.commons.exceptions.CmisUnauthorizedException: Unauthorized&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;this is the code:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;public static void impersonateFour() {&lt;BR /&gt; &lt;BR /&gt; &lt;BR /&gt; final Object result = AuthenticationUtil.runAs( new AuthenticationUtil.RunAsWork&amp;lt;Object&amp;gt;() {&lt;BR /&gt; public ArrayList&amp;lt;String&amp;gt; doWork() throws Exception {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ArrayList&amp;lt;String&amp;gt; a = new ArrayList&amp;lt;String&amp;gt;();&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;//WITH THIS&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AuthenticationUtil.setRunAsUserSystem();&lt;BR /&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;//OR WITH THIS&lt;BR /&gt;// final String currentUser = AuthenticationUtil.getFullyAuthenticatedUser();&lt;BR /&gt;// if (!currentUser.equals("test")) {&lt;BR /&gt;// &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AuthenticationUtil.setRunAsUser("test");&lt;BR /&gt;// &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;AuthenticationUtil.setFullyAuthenticatedUser("test");&lt;BR /&gt;// }&lt;BR /&gt; &lt;BR /&gt; SessionFactory sessionFactory = SessionFactoryImpl.newInstance();&lt;BR /&gt; Map&amp;lt;String, String&amp;gt; parameter = new HashMap&amp;lt;String, String&amp;gt;();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;// I'm BOUND&amp;nbsp;&amp;nbsp;PUT AN USER NAME AND PASSWORD?&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;/////////parameter.put(SessionParameter.USER, "userTest");&lt;BR /&gt;/////////parameter.put(SessionParameter.PASSWORD, "password");&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;&lt;BR /&gt; parameter.put(SessionParameter.ATOMPUB_URL, ALFRSCO_ATOMPUB_URL);&lt;BR /&gt; parameter.put(SessionParameter.BINDING_TYPE,BindingType.ATOMPUB.value());&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;//&amp;nbsp; WHEN CALL &lt;SPAN&gt;getRepositories(&lt;SPAN style="background-color: #f8f9fa;"&gt;parameter)&amp;nbsp; THROW EXCEPTION&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="background-color: #f8f9fa;"&gt;Unauthorized&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;&lt;BR /&gt; List&amp;lt;Repository&amp;gt; repositories=sessionFactory.getRepositories(parameter);&amp;nbsp; &amp;nbsp;//&amp;nbsp; &amp;lt;&amp;lt;-- ?&lt;BR /&gt; session=repositories.get(0).createSession();&lt;BR /&gt; &lt;BR /&gt; return a;&lt;BR /&gt; }&lt;BR /&gt; &lt;BR /&gt; }, AuthenticationUtil.getSystemUserName()&lt;BR /&gt; );&lt;BR /&gt; }&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CAN YOU SAY WHY?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;THANK YOU SO MUCH&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 05 Jul 2019 08:39:31 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97096#M28438</guid>
      <dc:creator>vmalfresco</dc:creator>
      <dc:date>2019-07-05T08:39:31Z</dc:date>
    </item>
    <item>
      <title>Re: IMPERSONATE api alfresco</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97097#M28439</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&amp;nbsp;&lt;A _jive_internal="true" data-userid="107678" data-username="openpj" href="https://community.alfresco.com/people/openpj" style="color: #8bc34a; background-color: #ffffff; border: 0px; font-weight: 200; text-decoration: none; font-size: 1.286rem;" rel="nofollow noopener noreferrer"&gt;Piergiorgio&lt;/A&gt;,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;this is my exception and i don't know why:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Exception in thread "main" org.apache.chemistry.opencmis.commons.exceptions.CmisPermissionDeniedException: Permission denied: 0605370828 Accesso Negato.&amp;nbsp; Non si dispone di permessi appropriati per eseguire questa operazione.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i tried this code:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;public static void impersonateFive()throws Exception {&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; SessionFactory sessionFactory = SessionFactoryImpl.newInstance();&lt;BR /&gt; Map&amp;lt;String, String&amp;gt; parameter = new HashMap&amp;lt;String, String&amp;gt;();&lt;BR /&gt; parameter.put(SessionParameter.USER, "testProfilazione"); &lt;BR /&gt; parameter.put(SessionParameter.PASSWORD, "testProfilazione"); &lt;BR /&gt; parameter.put(SessionParameter.ATOMPUB_URL, ALFRSCO_ATOMPUB_URL);&lt;BR /&gt; parameter.put(SessionParameter.BINDING_TYPE,BindingType.ATOMPUB.value());&lt;BR /&gt; &lt;BR /&gt; List&amp;lt;Repository&amp;gt; repositories=sessionFactory.getRepositories(parameter);&lt;BR /&gt; &lt;BR /&gt; session=repositories.get(0).createSession();&lt;BR /&gt; AuthenticationUtil lu = new AuthenticationUtil(); &lt;BR /&gt; lu.afterPropertiesSet();&lt;BR /&gt; AuthenticationUtil.runAsSystem(&lt;BR /&gt; new AuthenticationUtil.RunAsWork&amp;lt;Object&amp;gt;() {&lt;BR /&gt; &lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public Object doWork() throws Exception {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Folder root =session.getRootFolder();&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;//AT THIS POINT WHEN GET DOCUMENT THROW EXCEPTION&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Document newDocument = (Document)session.getObjectByPath("/xxx/xx/documentLibrary/test");&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return null;&lt;BR /&gt; &lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt; );&lt;BR /&gt; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;inside the RunAsWork method can I do all the operations with any user? right?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; background-color: #f8f9fa; font-size: 16px;"&gt;thank you&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 05 Jul 2019 11:06:31 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/impersonate-api-alfresco/m-p/97097#M28439</guid>
      <dc:creator>vmalfresco</dc:creator>
      <dc:date>2019-07-05T11:06:31Z</dc:date>
    </item>
  </channel>
</rss>

