我一直在使用opencmis Api将Liferay门户连接到Alfresco存储库
通常的方法是
设置会话参数,提供用户的登录凭据
parameter.put(SessionParameter.USER, "user_name");
parameter.put(SessionParameter.PASSWORD, "user_unencrypted_password");
使用这些参数获取会话
SessionFactory factory = SessionFactoryImpl.newInstance();
Session session = factory.getRepositories(parameter).get(0).createSession();
现在,我的问题是我正在使用LDAP身份验证,而且我无法在会话客户端中知道用户的未加密密码(这是一个非常常见的安全要求)。因此,虽然我的用户密码在2个系统(Web门户和Alfresco)之间同步,但我仍然无法创建会话。
那么有没有另一种方法为特定用户创建会话,而不知道用户的未加密传递? 例如,如果我作为Alfresco Admin连接,我可以冒充其他用户吗?
编辑:我想有一些解决方法,比如使用备用API(webres,REST API和Alfresco中的自定义函数),但我更喜欢一种解决方案,它最好更直接,更干净,如果可能的话,不会使用多个API的