加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

通过Ajax发布安全保存的最佳实践发布了asp.net MVC 3

发布时间:2020-12-16 02:56:34 所属栏目:百科 来源:网络整理
导读:我正在为几个用户开发Asp.Net MVC 3 / knockout.js网站,他们可以保存有关其网站的信息 这是该模型的简单版本 class{string Idstring Namestring Urlstring Description} 我想构建一个响应迅速的UI,以便所有加载保存等都将通过Ajax完成. 所以场景是当用户将so
我正在为几个用户开发Asp.Net MVC 3 / knockout.js网站,他们可以保存有关其网站的信息
这是该模型的简单版本

class{
string Id
string Name
string Url
string Description
}

我想构建一个响应迅速的UI,以便所有加载保存等都将通过Ajax完成.

所以场景是当用户将som网站添加到他的列表并点击保存时,json字符串被发布到控制器中的Action方法.

一切正常.

问题是:

如何确保用户没有篡改id并实际保存有关其他用户网站的信息?

我当然是隐藏的,但任何具有一些网络知识的邪恶的人都可以轻易地改变身份.

解决方法

您应该使用身份验证.使用Authorize属性修饰将执行更新的操作.这将确保发送AJAX请求的用户经过身份验证,并且无法更改其用户名.然后,您将检查您的数据库中是否他想要更新的站点的ID属于他.您当然会有一个包含用户和站点之间映射的表.

如果用户篡改了站点ID并将某个不属于他的站点的值放入,则当您执行查询以验证给定站点ID是否属于给定用户名时,您在控制器操作中将检测到它.他无法篡改用户名,因为它存储在加密的身份验证cookie中,除非他用不同的用户名登录,在这种情况下他已经知道密码.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读