asp.net – 查询字符串参数使我的应用程序面临风险?
我正在编写一个Asp.Net WebForms应用程序,我在其中调用一个编辑页面,使用URL中的查询字符串参数传递有关要编辑的记录的数据. 喜欢: http://myapp.path/QuoteItemEdit.aspx?PK=1234&DeviceType=12&Mode=Edit 在应用程序的上一页中,我向用户展示了他可以根据自己的帐户权限编辑的筛选项目的GridView,并使用上述参数列表调用编辑页面,页面知道该怎么做.我不会对目标页面进行任何额外的检查,以验证用户是否有权访问传入的PK记录值,因为我打算依赖上一页来过滤列表,我会没事的. 但是,很明显,用户现在可以键入不同PK的URL并获得编辑该记录的访问权限. (或者,他可以访问Mode = View,但不能访问Mode = Edit或Mode = Delete.基本上,我希望避免验证目标页面上的记录和访问权限. 在调用目标页面之前,我还使用Session变量测试了相同的工作流程来存储PK,DeviceType和Mode,然后在目标页面中从Session中读取它们.因此没有涉及查询字符串参数.这将控制远离用户. 所以,我正在寻找关于这两种方法的反馈,以便我选择一种可接受/标准的方式来处理这个问题,因为它似乎是CRUD应用程序非常常见的应用程序设计模式. 解决方法我认为通常的做法是做你要避免的事情:在原始页面上,你需要检查用户应该具备的功能,并适当地显示他们的选项.然后在实际工作页面上,您需要再次检查用户以验证他们是否可以访问该用户,并且可以访问该特定任务.从可用性的角度来看,这是用户想要的(保持简单,允许他们为某些页面添加书签等),并且两个页面上的安全性是唯一的方法. (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 从Api控制器内生成绝对的url to action
- 如何设置特定于ASP.NET请求的log4net上下文属性?
- 充分利用ASP.NET的三种缓存提高站点性能的注意方法
- 将变量从ASP.net传递给JavaScript
- 如何解决.Net中冲突的程序集?
- js触发asp.net的Button的Onclick事件应用
- asp.net 使用驻留在页面中的Cache缓存常用可定时更新的数据
- asp.net-mvc – ASP.net身份在删除外部帐户后停止分发外部C
- 使用SharpZipLib压缩打包多个内存中的文件
- asp.net-mvc – 使用ASP.Net MVC中的模型绑定器更新父/子记
- asp.net-mvc-3 – “区域”文件夹中的样式,脚本和
- .net核心中的ServicePointManager.DefaultConnec
- asp.net-mvc – 缩小ASP.NET MVC中的Action Filt
- asp.net-mvc – 如何在ASP.NET MVC4中使用具有唯
- 如何设置特定于ASP.NET请求的log4net上下文属性?
- asp.net – 我们可以在视图状态中放置哪些类型的
- asp.net-mvc – 图像URL中的符号MVC导致一个潜在
- asp.net – UpdatePanel中的动态创建控件?
- ASP.NET web.config文件是否失控?
- Plone和Asp.Net集成