Pet*_*ble 2 asp.net security asp.net-mvc asp.net-mvc-4
有没有一种简单的方法来检查请求是否来自我的应用程序内的操作?
我正在我正在制作的网站上建立电子邮件确认页面,我想在不同的请求来源上显示不同的文本.
如果用户来自我的应用程序中的其他操作(例如:注册操作),那么我只想显示一条文字,上面写着:"感谢您注册x,请在您收到的电子邮件中使用给定的链接确认您的帐户来自我们.."
如果用户不在我的应用程序之外,那么他可能想要确认他或她的帐户,因此我将根据确认的成功显示另一个文本.或许他/她是黑客,并希望在查询字符串中插入恶意代码.
你可能会问,为什么我需要这样做.好吧,我的客户非常热衷于安全性,我想检查网站上的几乎所有请求,这样他就可以安心入睡:)
只需检查UrlReferrer属性,它是请求的属性(这是控制器的属性):
if (Request.UrlReferrer.ToString().StartsWith("The domain"))
Run Code Online (Sandbox Code Playgroud)
你也可以使用它:
if (Request.UrlReferrer.Host == Request.Url.Host)
Run Code Online (Sandbox Code Playgroud)
顺便说一下,由于您关心安全性,请注意可以轻松编辑请求并包含错误数据.根据数据验证每个请求,不要依赖以前的URL等.
| 归档时间: |
|
| 查看次数: |
5077 次 |
| 最近记录: |