Extjs 如何在javascript中检查登录的用户是admin还是administrators组的成员

Extjs 如何在javascript中检查登录的用户是admin还是administrators组的成员,extjs,aem,jcr,Extjs,Aem,Jcr,我想在页面上显示登录用户是admin还是javascript中administrators组的成员的按钮 我能得到 CQ.User.getCurrentUser() 但无法检查用户是否为管理员。请建议。您可以在CRX存储库中创建一些节点,并应用适当的权限(例如,Administrators组可以读取该节点,其他组对该节点没有任何权限) 应用权限时,可以执行以下代码: if (CQ.User.getCurrentUser().hasPermissionOn("read", "path_to_y

我想在页面上显示登录用户是admin还是javascript中administrators组的成员的按钮

我能得到

CQ.User.getCurrentUser() 

但无法检查用户是否为管理员。请建议。

您可以在CRX存储库中创建一些节点,并应用适当的权限(例如,Administrators组可以读取该节点,其他组对该节点没有任何权限)

应用权限时,可以执行以下代码:

if (CQ.User.getCurrentUser().hasPermissionOn("read", "path_to_your_node") === true) {
    // add a button
}

这个解决方案是正确的,因为通常在AEM世界中,我们不应该依赖于用户登录名或组名,而应该依赖于当前用户拥有的权限。

永远不要在客户端这样做。如果我看到你的页面并浏览了它的源代码,我可以稍微修改一下JS,运行它,然后我就有了按钮——这是你想要的吗?您应该在后端进行此检查。TS希望根据用户角色显示按钮,而不是在客户端授予任何权限。它绝对合法,没有理由在服务器端渲染此按钮。在服务器端,我们必须检查每个请求的权限。