无状态验证码生成和验证
项目描述
无服务器状态的验证码
一个用于生成验证码图像和/或wav文件的视图,并用于验证用户输入。
使用cookie在请求之间传递状态。该状态与服务器端密钥一起使用,生成一个随机的字符字符串,该字符串随后显示为验证码图像,或转换为音频文件。验证不区分大小写。
请注意,验证码“单词”仅在5-10分钟内可用,之后视图将不再接受它。此外,每5分钟将为给定的会话密钥生成不同的单词。
这使这些验证码在用户持续发送相同的会话id的情况下,可重放长达10分钟。然而,由于服务器密钥,验证码在网站之间不可转让。
安装
此包需要Plone 2.5或更高版本,以及plone.keyring 1.1或更高版本。
无buildout安装
将此包安装到您的系统路径包中或安装到您的Zope实例的lib/python目录中。您可以使用easy_install或通过setup.py脚本完成此操作。您还需要以相同的方式安装plone.keyring。
安装包后,需要在您的Zope实例中注册它。这可以通过在etc/package-includes目录中放置一个包含以下内容的collective.captcha-configure.zcml文件来完成
<include package="collective.captcha" />
或者,您还可以将此行添加到已注册的包或Product的configure.zcml中。
使用buildout安装
如果您使用buildout管理您的实例,安装collective.captcha会更加简单。您可以通过将其添加到实例的eggs行来安装collective.captcha
[instance] eggs = collective.captcha zcml = collective.captcha
最后一行告诉buildout生成一个zcml片段,该片段告诉Zope配置collective.captcha。
如果另一个包依赖于collective.captcha egg或直接包含其zcml,您不需要在buildout配置中指定任何内容:buildout将自动检测此内容。
在更新配置后,需要运行“bin/buildout”,这将负责更新您的系统,包括安装plone.keyring依赖项。
注册plone.keyring KeyManager
在Plone 3.1之前的任何版本中,您需要确保已经注册了plone.keyring KeyManager实用程序。在Zope ZMI中,使用portal_setup工具运行plone.keyring KeyManager注册配置文件。
使用视图
请参阅collective.captcha.browser包中的captcha.txt doctest以及collective.captcha.form中的captcha.txt。
版权和致谢
collective.captcha版权所有2007,由Jarn(以前称为Plone Solutions)所有,并按GPL许可。有关详细信息,请参阅LICENSE.txt。
它是由Martijn Pieters编写的。
collective.captcha更改
1.7 (2012-02-27)
停用‘zope.testing.doctest’以使用stdlib的‘doctest’。[tseaver]
在Python 2.6+下抑制‘sha’弃用。[tseaver]
在Zope 2.12+下抑制‘Globals.package_home’弃用。[tseaver]
将‘verify’添加到Captcha视图允许的属性列表中,允许受限制的代码验证提交的验证码。[mj]
改进会话id生成并删除冗余sha1。[serhat]
将验证码图像拼写从0.3增加到1.5。[serhat]
1.6 (2011-05-29)
正确计算下一个时间段的单词。修复了http://plone.org/products/collective.captcha/issues/4。[mj]
调整导入以兼容Plone 4.1。[redcor]
明确定义‘image’和‘audio’为可发布的。[cillian]
1.5 (2010-01-11)
1.4 (2008-05-02)
切换到使用plone.keyring提供密钥。
1.3 (2008-02-22)
得益于Reed O’Brien,SkimpyGimpy现在有了egg。更新了安装说明和setup.py。
更新测试以反映所使用的字符集减少。
1.2 (2007-12-13)
为zope.formlib添加了captcha字段和小部件。
将生成captcha所使用的字符减少到仅大写字母和数字;用户测试表明,即使是人类解决captcha也有困难。
1.1 (2007-11-21)
如果响应中存在captcha cookie,则从响应中删除它以防止提前过期。这会在验证后创建新的captcha时发生(因为验证失败或由于其他原因需要重新显示表单)。感谢David Glick指出这一点。
1.0 (2007-11-19)
初始发布
项目详情
集体.captcha-1.7.zip的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 49a311539974202ab84d1323530e3dc0a0393318c9b4f3c50df36e938cdfb9f1 |
|
MD5 | bc65090fd026b538ccbbce21e40a579e |
|
BLAKE2b-256 | d3f40709bd2c11802a1c9a6725102994681dd31d4e559049f0596b9d3141ba82 |