是否有推荐用于自适应身份验证的C#代码/类/开源/工具?
我们的应用程序的一些功能使用Captcha来避免垃圾邮件或不当行为,不幸的是,这也减慢了我们的真正用户.我想只在某些参数看起来“阴暗”时显示验证码,例如异常的IP地址位置,更改同一帐户名的IP,不寻常的浏览器配置(可暗示匿名服务)等.
我显然可以为此编写代码,但我认为这是一个常见的问题,公共资源可以帮助.我们目前使用谷歌Catchpa服务,显然任何包装的解决方案都是绝对理想的.
最佳答案 我认为你最好的办法是结合一些已经可用的非突兀技术和工具来处理实际的僵尸/垃圾邮件检测.确定可能存在的风险后,您可以在继续之前提示访问者进行CAPTCHA验证.
我不知道一个开箱即用的CAPTCHA解决方案,它将根据某些标准显示自己.这可能是因为定义“机器人”或“垃圾邮件”的内容在很大程度上是主观的,并且总是在变化.此外,大多数现代机器人都可以将自己标识为您的花园品种用户代理.
也就是说,如果你最终不得不“滚动自己”,我建议如果以下任何一种情况属实,则显示CAPTCHA:
> HttpContext.Current.Request.Browser.Crawler返回true
> Akismet(http://akismetapi.codeplex.com/)为任何输入文本返回正匹配
> A HoneyPot返回正匹配
>过度锤击(在会话中计算回发和/或page_loads)
>过多的登录尝试
> NoBot返回正面匹配
希望这可以帮助