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

时间:2019-01-09 14:37:19

标签: aem aem-6

我具有以下要求: 我正在使用AEM 6.3版本。有一个使用SOAP客户端的第三方应用程序。 SOAP客户端只有很少的方法需要实现。对于其中一种方法,我需要提供已登录AEM用户的会话ID(会话对象应具有有关已登录用户,到期时间等一些基本信息)。我只需要作者实例上的会话ID。 第三方应用程序需要来自AEM作者实例的AEM页面信息。 不幸的是,我无法获得已登录用户的任何唯一会话ID。我得到的会话是每次刷新页面时都会更改的存储库/ JCR会话。 我还以为我可以使用JsessionID,但我不知道如何获取JsessionID。

任何人都可以帮忙。

1 个答案:

答案 0 :(得分:1)

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

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

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

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