【问题标题】:Use Liferay Authentification to restrict directory listing on Tomcat?使用 Liferay 身份验证来限制 Tomcat 上的目录列表?
【发布时间】:2012-04-12 22:58:29
【问题描述】:

是否可以使用 Liferay 身份验证来允许或拒绝对目录列表的访问?

在我的场景中 Liferay 在 Tomcat 下运行。我想要的是限制对特定目录及其内容的访问(比如说localhost:8080/pdf/)。目前每个用户都可以访问 pdf 目录,这不是我的意图。

我可以使用当前的 HTTP 会话吗?

-------- 编辑 ---------

我将尝试更详细:在liferay tomcat下我定义了一个新的上下文,如下所示。

<Context path="/pdfs" docBase="/Users/marco/Development/liferay/resources/pdfs/"
         crossContext="false" debug="0" reloadable="true">
</Context>

这样做的好处是,我可以轻松访问“/pdfs”的内容。缺点是,每个人都可以访问“/pdfs”。

问题是,如何限制对“/pdfs”的访问?我的想法是使用 Liferays 身份验证……但是如何?如何限制当前登录 Liferay 应用程序的用户访问“/pdfs”?

谢谢。

【问题讨论】:

    标签: authentication tomcat liferay user-permissions


    【解决方案1】:

    我认为最好的选择是在标准 servlet 过滤器中实现限制,因为这个功能是 Tomcat 标准特性。

    使用 HTTP 会话是什么意思?我猜你想使用 Liferay 权限检查系统来避免列出目录,对吧?

    最好的问候, 豪尔赫

    【讨论】:

    • 感谢您的回答。该主题仍然相关。
    • 使用 Liferay 权限检查系统对我来说是全新的体验?我会试一试……稍后。谢谢。
    • 我改进了我的问题(见上面的原始问题)。
    【解决方案2】:

    通过设置上下文,您绕过了 Liferay。

    我会建议另一种方法。我不会定义 docBase,而是将文档存储在 Liferay 文档库中。您可以更好地控制内容的权限。

    DLFileEntryServiceUtil.addFileEntry(...)
    

    【讨论】:

      猜你喜欢
      • 2011-06-12
      • 1970-01-01
      • 2015-07-23
      • 1970-01-01
      • 1970-01-01
      • 2016-05-07
      • 1970-01-01
      相关资源
      最近更新 更多