2007-06-19
Liferay中的第三方组件:验证码(simple java captcha)
Liferay是个很成功的开源项目,其中用到了大量的第三方组件。
组件列表来自
http://wiki.liferay.com/index.php/Liferay_Dependencies
simple java captcha http://simplecaptcha.sourceforge.net 是一套创建验证码图像的组件。Liferay使用该组件在多个功能中添加验证码功能。
在4.3版本中验证码的配置有两个地方
portal.properties
以及
captcha.properties
可以通过创建ext文件,覆盖默设置。
组件列表来自
http://wiki.liferay.com/index.php/Liferay_Dependencies
simple java captcha http://simplecaptcha.sourceforge.net 是一套创建验证码图像的组件。Liferay使用该组件在多个功能中添加验证码功能。
在4.3版本中验证码的配置有两个地方
portal.properties
##
## Captcha
##
#
# Set the maximum number of captcha checks per portlet session. Set this
# value to 0 to always check. Set this value to a number less than 0 to
# never check.
#
captcha.max.challenges=1
以及
captcha.properties
include-and-override=captcha-ext.properties cap.border=yes cap.border.c=black cap.border.th=1 cap.image.height=50 cap.image.width=150 #cap.text.producer=com.liferay.portal.captcha.DictionaryWordTextProducer cap.text.producer=com.liferay.portal.captcha.PinNumberTextProducer
可以通过创建ext文件,覆盖默设置。
评论
hanfeng
2007-09-28
suyulin6688 写道
不错。
不过有个问题,
假设我在“login.jsp”里面有用户登录的表单,表单里面使用了验证码,
“login.jsp”的表单提交后,提交到“loginAction.do”来处理用户登录。
我想在“login.jsp”里面用javascript对验证码进行客户端验证,
但是,在“login.jsp”页面里,我从session取到的验证码并不是当前页面此时的验证码,
而是上一次生成的验证码。
(当然,在“loginAction.do”里面进行服务器端验证是可以的,从session取到的验证码是“login.jsp”页面此时的验证码。)
不过有个问题,
假设我在“login.jsp”里面有用户登录的表单,表单里面使用了验证码,
“login.jsp”的表单提交后,提交到“loginAction.do”来处理用户登录。
我想在“login.jsp”里面用javascript对验证码进行客户端验证,
但是,在“login.jsp”页面里,我从session取到的验证码并不是当前页面此时的验证码,
而是上一次生成的验证码。
(当然,在“loginAction.do”里面进行服务器端验证是可以的,从session取到的验证码是“login.jsp”页面此时的验证码。)
如果你的想法可以实现,那么验证码就失去意义了。因为验证码最大的作用是防止自动化的密码探测攻击,按照你的用法,黑客工具可以很容易的获得验证码的值,通过验证。现在有些网站使用ajax技术实现无刷新的验证码校验,也是需要传回服务器验证的,不会把验证码的值暴露到客户端。
suyulin6688
2007-07-02
不错。
不过有个问题,
假设我在“login.jsp”里面有用户登录的表单,表单里面使用了验证码,
“login.jsp”的表单提交后,提交到“loginAction.do”来处理用户登录。
我想在“login.jsp”里面用javascript对验证码进行客户端验证,
但是,在“login.jsp”页面里,我从session取到的验证码并不是当前页面此时的验证码,
而是上一次生成的验证码。
(当然,在“loginAction.do”里面进行服务器端验证是可以的,从session取到的验证码是“login.jsp”页面此时的验证码。)
不过有个问题,
假设我在“login.jsp”里面有用户登录的表单,表单里面使用了验证码,
“login.jsp”的表单提交后,提交到“loginAction.do”来处理用户登录。
我想在“login.jsp”里面用javascript对验证码进行客户端验证,
但是,在“login.jsp”页面里,我从session取到的验证码并不是当前页面此时的验证码,
而是上一次生成的验证码。
(当然,在“loginAction.do”里面进行服务器端验证是可以的,从session取到的验证码是“login.jsp”页面此时的验证码。)
lyo
2007-06-19
不错的东西,以前发现不少网站,例如chinaren 又这种东西,不用自己实现了,有时间试试! 
- 浏览: 70973 次

- 详细资料
搜索本博客
我的相册
generate friendlyurl
共 25 张
共 25 张
最新评论
-
Liferay 4.3 新功能介绍-- ...
这个我试了,很好用,可是是不是只能通过root.xml的配置共用一个数据库阿?怎 ...
-- by quickSand -
Liferay 4.3 与CAS集成配 ...
谁配成功了
-- by sun128837 -
Liferay 4.3 中 friendly ...
不错,受益匪浅。不过当用户的screenName是汉字时,FriendlyURL ...
-- by dins2003 -
Liferay中的第三方组件: ...
suyulin6688 写道不错。 不过有个问题, 假设我在“login.js ...
-- by hanfeng -
Howto: 如何使用Liferay ...
能不能写的简单明了一些啊? 我按照你写的一步步做下去,根本就不成功啊.
-- by liyx326






评论排行榜