Aem 如何根据CQ5中登录的用户隐藏页面?

Aem 如何根据CQ5中登录的用户隐藏页面?,aem,Aem,我想根据登录用户在导航组件中隐藏一个页面。我有两个想法。在CRX-DE中设置页面节点的权限;拒绝所有用户使用它;然后允许它用于特定的组。我一直在尝试;没有发现多少成功。其他的我可以在jsp中根据用户组获取登录用户的id;我可以设置页面的属性“在导航中隐藏”。但我无法找到如何在jsp中设置该属性。请建议 编辑: 我正在使用默认身份验证。我想在默认的“列表”组件中隐藏一个页面,不让导航。如果我使用CUG;属于该组的用户仍然能够在列表组件中看到该特定页面的链接;如果用户属于某个特定的组,我希望链接本身

我想根据登录用户在导航组件中隐藏一个页面。我有两个想法。在CRX-DE中设置页面节点的权限;拒绝所有用户使用它;然后允许它用于特定的组。我一直在尝试;没有发现多少成功。其他的我可以在jsp中根据用户组获取登录用户的id;我可以设置页面的属性“在导航中隐藏”。但我无法找到如何在jsp中设置该属性。请建议

编辑: 我正在使用默认身份验证。我想在默认的“列表”组件中隐藏一个页面,不让导航。如果我使用CUG;属于该组的用户仍然能够在列表组件中看到该特定页面的链接;如果用户属于某个特定的组,我希望链接本身被隐藏
谢谢。

如果您使用AEM中的默认身份验证功能(如Geometrixx),它依赖于AEM中存在的用户,那么您可以使用封闭的用户组。CUG允许您设置哪些用户或组可以或不能查看特定页面。您可以在“页面属性”对话框中看到为每个页面设置CUG的位置。我很确定CUG设置也会继承页面层次结构


为此使用JCR权限要复杂得多,因为这是一种低级的体系结构。然而,对于更复杂的解决方案,有时这是等式的必要部分。

我同意ryanluka的观点,即当问题可以通过更简单的方法解决时,应该避免使用JCR许可。我修改了默认列表组件的list.jsp。使用Userpropertiesutil提取登录用户的id;以集团为基础,;在jQuery中编写代码以从列表组件中删除特定页面的div。

感谢您的回复。如果我不够清楚,请道歉。是的;我正在使用默认身份验证。我想在默认的“列表”组件中隐藏一个页面,不让导航。如果我使用CUG;属于该组的用户仍然能够在列表组件中看到该特定页面的链接;如果用户属于某个特定组,我希望该链接本身被隐藏。我通过从用户/组管理控制台拒绝该页面对该特定组的权限来实现此目的。现在;如果登录用户来自该组;该页面不会出现在列表组件的导航中。请提供建议/反馈/意见。谢谢。嗨,我也面临同样的问题。我有一个处理程序,我正在从sightly html组件调用该处理程序的一个方法。现在在处理程序中,我想知道loggedin用户的Id,但不知道如何。你知道我该怎么做吗?你可以在你的处理程序类中使用jackrabbit api来获取登录用户的id;通过使resourceResolver适应会话。请回答这个问题