2013-04-10 76 views
0

我正在建立IIS 7.5上的ASP.Net/C#网站,我想阻止所有手机访问此网站。如何阻止所有手机访问我的网站

如何阻止/拒绝所有类型的手机访问本网站(使用Windows身份验证)?我正在构建一个内部应用程序,我只想让IE访问桌面。这比任何事情都更需要安全性。

理想情况下,我想检查用户是否在任何Windows挑战/响应发生之前首先通过移动电话(或刚刚批准的浏览器)访问此网站。

我一直在寻找谷歌的指针(没有运气),以及在寻找URL重写选项。由于我对Web编程的这方面比较陌生,所以我在哪里开始寻找或者我是否在正确的位置寻找某种程度的损失。我不确定是否应该允许一个已批准的浏览器通过或阻止所有手机。

+0

我记得我注意到我对网络编程这方面有点新,所以我可能错过了一些明显的东西,所以请提前原谅我。我一直在搜索一些指针/线索如何做到这一点,或者通过添加一些东西到我的aspx页面,甚至使用URL重写。 – 2013-04-10 17:56:51

+0

你想阻止移动浏览器的任何理由?这听起来似乎是一个糟糕的主意,它甚至可能逆流入手机浏览器,假装它们是桌面的,就像IE假装它是Mozilla,KHTML声称它是“像壁虎”一样。 – 2013-04-10 18:12:38

+0

我正在创建一个内部应用程序,我只需要桌面即可访问。这比任何事情都更需要安全。 – 2013-04-10 18:14:46

回答

1

您只希望它检查HTTP请求上的User-Agent标题属性,并拒绝来自移动电话的这些用户代理的内容。

下面是用于移动设备的用户代理的列表: http://www.zytrax.com/tech/web/mobile_ids.html

你将不得不使用HttpResquestUserAgent属性为: http://msdn.microsoft.com/en-us/library/system.web.httprequest.useragent.aspx

祝你好运。

+0

可能是一个更好的策略来选择你将允许的用户代理,因为移动用户代理不断变化,但浏览器是相当静态的,相比 – Crake 2013-04-10 17:52:25

+1

@Crake,除非它触发回到更多的已经集成的用户代理。请记住“Mozilla/5.0 ...(KHTML,如Gecko)Chrome/26.0.1410.43 Safari/537.31”?它实际上是哪个浏览器?提示:不是Mozilla 5.0 – 2013-04-10 18:06:49

+0

我不愿意看到移动浏览器假装他们是与Mozilla 5兼容的桌面浏览器,并且他们的渲染核心与Gecko类似。这需要死亡。基于用户代理的阻塞需要死亡。 – 2013-04-10 18:10:12

相关问题