我想允许用户在他们登录后(如在脸书上)编辑其个人档案页面上的项目。让我们打电话给这个页面profile.cfm
。如何在使用JQuery进行内联页面编辑时保持安全
只有当用户登录并且他们的凭据与页面的凭据相匹配时,我很困惑如何允许内联编辑页面(即,用表单输入替换页面元素,以便用户可以编辑内容)他们想编辑。
传统上,我将有一个单独的页面来编辑像profile-edit.cfm
这样的配置文件。在这个页面上,我将检查他们想要编辑的配置文件的ID是否与存储在其Session变量中的ID相同。如果一切都匹配,那么页面将显示。如果不是,它会失败。
但是,在JS内联编辑中,没有单独的编辑页面来处理安全检查。那么,只有当正确的用户登录时,我怎么才能启用JS编辑功能呢?我不希望用户修改其他人的个人资料。简单地禁用/启用基于登录凭据的内联编辑Javascript代码是不够的,因为可以轻松地使用Firebug等方式重新启用它。
当然,尽管它们可以启用JavaScript,但并不意味着服务器将接受编辑,因为它进行自己的验证。只是,如果用户没有正确的登录凭据,我宁愿用户甚至没有可视化编辑页面的选项。
这是否只是基于JavaScript的控件的预期折衷方案,它们可能对用户可见(当然恶意修改该页面)将取决于其他变量无法正常工作?
我从一个逻辑/概念点卡住了这个。
你是如何保存这些偏好的? – 2014-09-02 11:33:00
当用户登录时,我将他们的ID存储在会话变量中,例如SESSION.ProfileID。为了确保正确的用户登录,它会像''然后允许用户编辑这个配置文件。 Coldfusion使用单独的模板很容易实现。但它的内联让我感到困惑 –
2014-09-02 12:19:27