我有一个 ASP.NET 站点,一些客户想要更好的安全层来访问它。今天的网站要求输入用户名和密码,但很多客户想要限制对某些机器的访问,我需要在我的服务器端执行此操作。所以,我想寻求一些建议。
使用 VPN 来限制访问? (使用移动设备将无法使用)
可以查看mac地址吗?
可以使用客户端证书吗?
最佳答案
对用户来说最简单
我会检查 multi-factor authentication (Andrew Walters 的评论提到了这一点)所有内容都通过 SSL 交付,并特别注意页面超时、 session 固定、密码策略等。
发送到手机的 PIN 是常用的第二因素。
我断言这“对用户来说最简单”,因为许多大型网站(例如 Google 和 Facebook,它们的银行)都以这种方式运营。无需安装任何内容,也无需学习任何新内容。
从商业角度来看,这很多都不可取。
VPN
Use a VPN to restrict the access? (With mobile devices will not work)
这是企业环境中的常见选项,通常被认为是安全的(尽管不能成为放弃密码策略等其他良好做法的借口)。但是,您确实可以选择移动设备。
参见 F5's SSL VPNs ,特别是他们的 whitepaper on mobile access for iOS and Android其中指出,“适用于 iOS 和 Android 设备的 BIG-IP 边缘门户应用程序简化了对企业 Web 应用程序的安全移动访问 [...] 用户可以安全地访问内部网页和 Web 应用程序。”
您可以通过在身份验证过程中添加另一个因素来提高安全性:a token with a continually changing PIN .
证书
Is possible to use client certificate ?
是的,是possible ;它是否满足您的业务需求是另一回事(例如,管理此类解决方案需要技能/时间)。
如果您不熟悉这个主题,我建议您阅读这篇 KB article (快速阅读)。
对于实现,这是一个古老但非常详细的 walkthrough和更新的 walkthrough对于 IIS 7。
关于c# - 如何提高 ASP.NET 站点的安全性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15118717/