【发布时间】:2015-08-19 00:01:26
【问题描述】:
我正在使用 Java 和 JavaScript 通过 Apache Tomcat 运行 CKFinder/CKEditor。有几个项目,问题是我无法阻止一个项目中的人访问为不同项目存储的图像。我希望能够简单地动态更改 BaseURL,但我似乎无法做到这一点。有什么方法可以让每个用户都有自己的文件夹,并且只有他们可以访问?
【问题讨论】:
标签: javascript java ckfinder
我正在使用 Java 和 JavaScript 通过 Apache Tomcat 运行 CKFinder/CKEditor。有几个项目,问题是我无法阻止一个项目中的人访问为不同项目存储的图像。我希望能够简单地动态更改 BaseURL,但我似乎无法做到这一点。有什么方法可以让每个用户都有自己的文件夹,并且只有他们可以访问?
【问题讨论】:
标签: javascript java ckfinder
至少有一些方法可以在 CKFinder 2 for Java 中动态修改路径。
如果您为 CKFinder 实例分配一个 id,则该 id 将在每个请求上传递给服务器连接器。您可以将其用作令牌并将每个唯一 id 转换为服务器端的正确服务器路径。确保使用长/复杂的散列,以便用户无法通过轻松操作 id 访问不应访问的路径。
这种方法的优点是您可以为每个 CKFinder 实例分配一个不同的 baseUrl/baseDir,例如为每篇文章的图像设置单独的文件夹等。
另一种选择是使用会话变量。用户登录后,将适当的 baseDir/baseUrl 变量存储在会话变量中。
为了使用 id 或 session,您需要能够告诉 CKFinder 使用它们。有关如何在您自己的类中动态修改 CKFinder 配置的更多详细信息,请查看文档:http://docs.cksource.com/CKFinder_2.x/Developers_Guide/Java/Configuration/Extending
【讨论】: