我正在使用Java和JavaScript通过Apache Tomcat运行CKFinder / CKEditor。有几个项目,问题是我不能阻止一个项目的人访问为不同项目存储的图像。我想简单地能够动态地更改BaseURL,但我似乎无法做到这一点。有没有办法给每个用户他们自己的文件夹,只有他们可以访问?
答案 0 :(得分:0)
至少有方法可以在CKFinder 2 for Java中动态修改路径。
如果为CKFinder实例分配了一个id,则该id将在每个请求时传递给服务器连接器。您可以将其用作令牌,并将每个唯一ID转换为服务器端的正确服务器路径。确保使用长/复杂哈希,以便用户无法通过轻松操作id来访问他们不应该访问的路径。
这种方法的优点是你可以为每个CKFinder实例分配一个不同的baseUrl / baseDir,例如为每篇文章的图像分配单独的文件夹等。
另一种选择是使用会话变量。用户登录后,在会话变量中存储适当的baseDir / baseUrl变量。
为了使用id或session,你需要告诉CKFinder使用它们。有关如何在您自己的类中动态修改CKFinder配置的更多详细信息,请查看文档:{{3}}