在 asp.net 中阻止对 WebService.asmx 的访问
Posted
技术标签:
【中文标题】在 asp.net 中阻止对 WebService.asmx 的访问【英文标题】:Block access to WebService.asmx in asp.net 【发布时间】:2017-05-22 01:22:43 【问题描述】:我已经构建了一个简单的异步运行的 asp.net Web 应用程序,使用 WebService.asmx 文件来访问数据库。我需要保护文件,以便客户端无法访问它,而只能通过 http 请求访问 javascript 代码。 (该文件位于 domain.com/WebService.asmx)。
我读到有人建议使用用户身份验证系统,但这并不适用(因为它很容易被操纵)。
我的最终目标是阻止从除 javascript 文件之外的任何地方访问 WebService.asmx 文件。
我使用的是 Visual Studio 2013,但该应用程序将在 Windows Server 2012 上运行。
【问题讨论】:
authentication system can be easily manipulated
- 使用一个不能被操纵的然后
【参考方案1】:
简而言之,你不能。
Javascript 在客户端、浏览器中运行。 通过 Javascript 调用 asmx 网络服务与访问浏览器中的 URL(或任何其他客户端 - 例如 Postman / Fiddler)没有什么不同 服务器不会知道有什么不同。
妥善保护它。
【讨论】:
以上是关于在 asp.net 中阻止对 WebService.asmx 的访问的主要内容,如果未能解决你的问题,请参考以下文章
Firefox 阻止对 ASP.NET 身份更改/模拟的简单 CORS 请求
如何通过更改 ASP.NET MVC 中的 Url 来阻止对控制器的访问?
什么时候在 asp.net WebService 中调用 Application_End
ASP.NET Membership - 当您在同一个 WebApp 中调用 WebService 时,经过身份验证的用户会丢失