1

使用由 Javascript 控制的 Flash 上传器(例如 SWFUpload)的问题之一是 Flash 在执行上传脚本时会启动自己的会话。这意味着如果上传脚本对用户进行身份验证,它将失败。

解决此问题的一种方法是将 PHPSESSID 作为 post 参数传递给脚本。然而,这并不是一个完美的解决方案,因为许多托管服务提供商都打开了 PHP 设置“session_use_only_cookies”,从而阻止了从请求中接受会话 ID。

有时,您不希望匿名用户执行您的上传脚本,将其从上帝知道的地方传递给上帝知道什么,这显然是一个主要问题。

我想知道除了会话和cookie之外,是否有人对验证用户有任何其他想法。是否可以验证 Flash 请求来自预期来源以及有效用户发起了请求。使用 PHPSESSID 以外的某种令牌,如果有的话,这怎么可能?

4

1 回答 1

0

是否可以验证 Flash 请求来自预期来源以及有效用户发起了请求。

不可靠,不。您永远无法可靠地验证 Flash 请求是否来自“预期来源”。您只能验证其内容。

使用 PHPSESSID 以外的某种令牌,如果有的话,这怎么可能?

您可以发明自己的“会话恢复令牌”(又名“记住我的 cookie”)功能来将 SWFUpload 会话与 PHP 会话相关联。但它不会验证客户端软件,只是两个会话之间的关系。

于 2018-10-13T19:08:51.020 回答