2009-02-16 52 views
3

我正在处理的项目是一段静态HTML,其中包含一些内联JavaScript,它将调用REST Web服务,我使用.NET 3.5 WCF创建自己的Web服务。在无状态REST Web服务环境中实现验证码

JavaScript会从用户那里获取一些详细信息,包括电子邮件地址,然后通过Ajax将这些详细信息发送到Web服务。网络服务会将详细信息存储在数据库中。

既然这是一个网络服务,我敢肯定它将是无状态的。

但是,该项目的要求是,前端JavaScript也应该做一个验证码,以防止垃圾邮件。

该网站本身只会持续几周(最多6周),而且我认为没有足够的时间让任何可能的攻击者认真对待网站。

由于这个原因,我考虑做一个完全客户端验证码,因为传统的验证码需要有状态的会话。

但是我很想知道在无状态环境下通常会实施什么安全措施,或者如果有人认为我错误地认为客户端验证码验证是足够的。

回答

1

你甚至可能不需要验证码。许多垃圾邮件客户端太笨,无法执行像Javascript这样的东西。你可以尝试在Javascript中设置一个隐藏的输入值。

如果您的网站只有几个星期的时间,那么我怀疑任何人都会建立一个客户来解决这个问题。

这就是说,它会拧没有Javascript的用户,所以我建议在Javascript中删除的屏幕上放置一条消息。这将有相同的输入字段,但作为复选框与标签,说明他们需要检查它不被忽略。