Adobe CQ5 API用法

时间:2014-10-19 23:10:23

标签: adobe cq5

1。 我正在管理一个使用Adobe CQ5作为其管理系统的网站。我知道querybuilder.json文件夹中有一个工具/bin - 我的问题是,如果外部用户使用此工具,他们会使用哪种API语法来查询" important&# 34;或者"敏感信息"。我需要知道这一点,以便在GET或POST期间阻止对这些语法字符串的访问。感谢任何帮助,谢谢!

所以,我要问的是,如果攻击者能够访问查询构建器链接,他是否能够查询密码或内部登录,如果是,如何?如果是这样,我可以删除查询构建器的哪种语法来激发这一点?

2。 此外,是否有人能够告诉我adobe querybuilder的正确语法,它可以为您提供其列出的目录所在的主机名或Web位置?

因此,例如,如果我返回/apps/geometrixx/user/login作为输出,我还想获取此文件路径所在的URL在我的服务器上。是否有可用于此操作的语法?

2 个答案:

答案 0 :(得分:1)

  1. 防止未经授权访问此类工具的最佳方法是在调度程序上deny * .json,并且只对您的应用程序特定json调用allow。您可以在Security Checklist

  2. 中找到一个良好的开端
  3. 有关查询构建器的文档可在此处找到:http://docs.adobe.com/docs/en/aem/6-0/develop/search/querybuilder-api.html

答案 1 :(得分:1)

请考虑停用对发布实例的/bin前缀开头的路径的所有请求。

这是所有servlet的通用存储,对于创作非常有用,但对其他实例则没有那么多。

如果您在应用程序中有任何自定义servlet,请查看Apache Sling documentation并考虑使用基于资源的servlet。

@SlingServlet(
    resourceTypes = "sling/servlet/default",
    selectors = "hello",
    extensions = "html",
    methods = "GET")
public class MyServlet extends SlingSafeMethodsServlet {

通过这种方式,您可以使用ACL控制对servlet的访问 - 如果您有权访问该节点(即您可以根据此资源查看/呈现组件),您将可以访问该servlet。