无法获取AEM 6.3中登录用户的唯一会话

无法获取AEM 6.3中登录用户的唯一会话,aem,aem-6,Aem,Aem 6,我有以下要求: 我使用的是AEM 6.3版本。有一个使用SOAP客户端的第三方应用程序。SOAP客户机几乎没有需要实现的方法。对于我需要提供登录AEM用户会话ID的其中一种方法,会话对象应该具有有关登录用户、到期时间等的一些基本信息。。我只需要author实例上的会话ID。 第三方应用程序需要AEM作者实例中的AEM页面信息。 很遗憾,我无法获取登录用户的任何唯一会话ID。我得到的会话是repository/JCR会话,它在每次刷新页面时都会更改。 我还认为我可以使用JsessionID,但我不

我有以下要求: 我使用的是AEM 6.3版本。有一个使用SOAP客户端的第三方应用程序。SOAP客户机几乎没有需要实现的方法。对于我需要提供登录AEM用户会话ID的其中一种方法,会话对象应该具有有关登录用户、到期时间等的一些基本信息。。我只需要author实例上的会话ID。 第三方应用程序需要AEM作者实例中的AEM页面信息。 很遗憾,我无法获取登录用户的任何唯一会话ID。我得到的会话是repository/JCR会话,它在每次刷新页面时都会更改。 我还认为我可以使用JsessionID,但我不知道如何获得JsessionID

任何人都可以提供帮助。

我认为您可以使用获取可授权对象:

        Session session = resourceResolver.adaptTo(Session.class);
        UserManager userManager = resourceResolver.adaptTo(UserManager.class);

        Authorizable auth = userManager.getAuthorizable(session.getUserID());

然后您应该能够获取标识会话的ID或用户路径。

\hi,我已经尝试以您提到的方式实现它,但它似乎不起作用。Authorizable auth=userManager.GetAuthorizable session.getUserID;这给了我一个匿名用户,您从哪里获得请求/资源解析程序?例如,如果我在自定义Servlet中使用上述代码,则可授权对象将向我提供登录用户“admin”。