跳转到主要内容

Zope3的密码生成和验证实用程序

项目描述

z3c.password

https://github.com/zopefoundation/z3c.password/actions/workflows/tests.yml/badge.svg https://coveralls.io/repos/github/zopefoundation/z3c.password/badge.svg?branch=master https://img.shields.io/pypi/v/z3c.password.svg https://img.shields.io/pypi/pyversions/z3c.password.svg

此软件包提供了一种密码生成和验证实用程序的API和实现。提供了一个适用于银行和其他高安全机构的超高安全实现。该软件包还提供字段和属性。

更改

2.0 (2024-05-21)

  • 添加对Python 3.11和3.12的支持。

  • 在发布时编译*.mo文件,而不是将它们包含在存储库中。

  • 放弃对Python 2.7、3.5和3.6的支持。

1.1.0 (2021-12-14)

  • 添加对Python 3.8、3.9和3.10的支持。

  • 放弃对Python 3.4的支持。

1.0.0 (2018-11-14)

  • 添加对Python 3.6和3.7的支持。放弃对Python 3.5及以下版本的支持。放弃对Python 2.6的支持。

  • 放弃对None密码的支持,因为这些密码不再由底层API支持。

1.0.0a1(2013-02-28)

  • 添加对Python 3.3的支持。

  • 放弃对zope.app.testingzope.app.authentication的依赖。

  • 用等效的zope.interface.implementer装饰器替换已弃用的zope.interface.implements用法。

  • 放弃对Python 2.4和2.5的支持。

0.11.1 (2012-09-19)

  • TooSimilarPassword:不要对maxSimilarity进行向上取整,因为我们有时会使用0.999来避免相同的密码集。0.999将显示为100%(100% 对比 100%)

0.11.0 (2012-08-09)

  • 为无效密码异常提供更好的错误信息(当你拒绝用户的密码因为太短或太长时,告诉他们最小/最大密码长度是很礼貌的)。

    这引入了新的尚未翻译的可翻译字符串。

0.10.1 (2011-03-28)

  • 微调

    • 密码字段:添加了ignoreEmpty=False参数

    • previousPasswords:始终设置属性,而不仅仅是追加

    • 对IPasswordOptionsUtility属性使用进行一些缓存

0.10.0 (2010-03-24)

  • 在尽可能早的时候检查请求的相关性,当计数失败的登录尝试时。这可以防止因资源等问题引发账户锁定错误。

0.9.0 (2010-02-18)

  • 添加荷兰翻译(janwijbrand)

0.8.0 (2009-01-29)

  • 功能:failedAttemptCheck

    • 在所有/任何请求上增加失败的尝试次数(这是默认值)

    • 仅在非资源请求上增加失败的尝试次数

    • 仅在POST请求上增加失败的尝试次数

  • 功能:在新的密码验证上提供更具体的异常。

0.7.4 (2009-12-22)

  • 修复:PrincipalMixIn.passwordSetOn在类在用户创建后被混入时意外地是None,这导致了一个错误。

0.7.3 (2009-12-08)

  • 修复:disallowPasswordReuse不得检查None密码。

0.7.2 (2009-08-07)

  • 德语翻译

0.7.1 (2009-07-02)

  • 功能:在PrincipalMixIn上的passwordOptionsUtilityName属性。这允许为一组用户设置不同的选项,而不是在主体上存储直接值。

0.7.0 (2009-06-22)

  • 功能:更难的密码设置

    • minLowerLetter

    • minUpperLetter

    • minDigits

    • minSpecials

    • minOthers

    • minUniqueCharacters

    • minUniqueLetters:计数且不允许少于指定的数量

  • 功能

    • disallowPasswordReuse:不允许设置之前使用过的密码

  • 100%测试覆盖率

0.6.0 (2009-06-17)

  • 功能

    PrincipalMixIn获得了一些新的属性

    • passwordExpired:强制密码过期

    • lockOutPeriod:启用过多失败尝试时的自动锁定和解锁

    IPasswordOptionsUtility拥有全局密码选项

    • changePasswordOnNextLogin:在此处未实现,请使用PrincipalMixIn.passwordExpired

    • lockOutPeriod:PrincipalMixIn属性的全球对应物

    • passwordExpiresAfter:PrincipalMixIn属性的全球对应物

    • maxFailedAttempts:PrincipalMixIn属性的全球对应物

    密码检查大致如下(从高层次上)

    1. 如果尝试次数过多并且账户应该被锁定,则引发AccountLocked

    2. 如果密码已过期且密码匹配,则引发PasswordExpired

    3. 如果尝试次数过多,则引发TooManyLoginFailures

    4. 返回密码是否匹配

    更多详细信息请参阅principal.txt

  • 添加俄语翻译

  • 重构PrincipalMixIn.now()为单独的方法,以方便覆盖和测试

  • 改变了密码检查的顺序

    1. 检查密码与存储的密码是否匹配

    2. 检查maxFailedAttempts,如果超过则引发TooManyLoginFailures

    3. 如果密码正常,检查expirationDate,如果超过则引发PasswordExpired

    4. 返回密码是否匹配

    这是因为我需要确保只有在密码确实有效时才引发PasswordExpired。输入无效密码绝对不能引发PasswordExpired,因为我想要使用PasswordExpired来允许用户更改密码。如果用户没有输入有效的密码,则不应发生这种情况。

0.5.0 (2008-10-21)

  • 初始发布

项目详情


下载文件

下载适合您平台文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源代码发行版

z3c.password-2.0.tar.gz (31.5 kB 查看哈希值)

上传时间 源代码

构建发行版

z3c.password-2.0-py3-none-any.whl (41.8 kB 查看哈希值)

上传时间 Python 3

由以下支持