【问题标题】:How to prevent access to a web application through a HttpWebRequest?如何防止通过 HttpWebRequest 访问 Web 应用程序?
【发布时间】:2016-04-08 02:10:25
【问题描述】:

我有一个使用 .NET 3.5 开发的 Web 应用程序,托管在 Windows 服务器上。

外部人员通过创建HttpWebRequest POST 并将浏览器信息与必要的输入值一起传递来访问我的网络应用程序。

如何限制通过HttpWebRequest访问我的网络应用程序?

【问题讨论】:

  • 您不希望用户使用HttpWebRequest
  • yes..exactly..人们正在获取所有浏览器详细信息,例如 Accept: text/html, application/xhtml+xml, / Accept-Language: en-US User -Agent:Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0),如 Gecko 内容类型:application/x-www-form-urlencoded 接受编码:gzip,放气 主机:localhost 内容长度: 6110 连接:Keep-Alive Pragma:无缓存 Cookie:ASP.NET_SessionId=eoymdoifmepp5bfjpquomnnr;通过使用提琴手应用程序。并更改文本框或下拉列表值的实际值,即使它们被禁用并再次发布。
  • 这些“人”是登录用户还是根本不应该访问的人?
  • 是的,这些人可以登录网络应用程序。但他们不应该允许更改禁用的值。

标签: c# asp.net web-scraping http-headers httprequest


【解决方案1】:

您不能真正限制用户使用HttpWebRequest(或者可以说是“不是浏览器”)调用您的网站,因为有关客户端计算机的所有信息(例如所使用的浏览器)都可能被欺骗。

你不得不怀疑你是否真的想经历这一切。你想让你的用户生活痛苦(或者至少是你网站的用户体验)吗?如果这样做,您可能需要使用验证码来确保存在真实用户而不是机器人。

【讨论】:

    猜你喜欢
    • 2012-02-13
    • 2021-10-04
    • 2020-03-06
    • 1970-01-01
    • 2015-01-19
    • 2014-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多