cancel
Showing results for 
Search instead for 
Did you mean: 

User Impersonation

ukdavo
Champ in-the-making
Champ in-the-making
Hi there

I would like to be able to perform CMIS actions against Alfresco as an impersonated user. I am aware that CMIS does not specify any functionality re user impersonation. I was hoping to achieve something like this:

  • Login to Alfresco via REST API or Web Script as the admin.

  • Impersonate the target user

  • Create a login ticket for the target user

  • Execute a CMIS service method (e.g. getChildren()) against Alfresco using the target user's username and login ticket
I'd like to do this so that users can login to my webapp, click a button in it and this will trigger a CMIS method. My app utilises Kerberos authentication via Spring Security so I would have the authenticated username but no password.

The questions that I have are:

  • Does the REST API provide a getLoginticketForUser() type method? If not then I guess I'll have to create a WebScript to do this via AuthenticationUtil.setCurrentUser().

  • Can I pass login tickets instead of the password to Alfresco's CMIS service?
Thanks
1 REPLY 1

ukdavo
Champ in-the-making
Champ in-the-making
I just noticed in Jeff Pott's CMIS article (http://ecmarchitect.com/archives/2009/11/23/1094) that Alfresco's CMIS implementation can accept basic auth or Alfresco tickets. I also found a blog post that discusses how to get an Alfresco ticket via web script (http://fabiostrozzi.eu/?p=24).