Products.PasswordStrength 0.5.0
This Pluggable Authentication Service (PAS) plugin adds a password policy giving the possibility to define up to 5 regular expressions to validate a password. Default constrains are length, capital and lower letters, number and special characters.
License: BSD
Keywords: PAS Plugins Zope password strength

.. contents::

PasswordStrength
================

This plugin works with Plone to allow an administrator to create
a password policy for their site. Once installed it provides a
Pluggable Authentication Service (PAS) plugin where you can create
as many regular expressions rules which will each be applied against
passwords during user registration. For example these rules can
ensure a passwords strength such as minimum length and required
letters or special characters.


Tests
=====

This package is tested using Travis CI on Plone 5.2 and 6.0.
For older

Requires
========

 - PlonePAS and its dependencies
 - Plone 5.2 or 6.0
 - For Plone 4.1, 4.2, 4.3 , 5.0 and 5.1 use Versions <> 0.5 or source-checkouts.

Installation
============

1. Add Products.PasswordStrength to your buildout like any other Plone plugin.
2. Add Products.PasswordStrength in the addon-controlpanel (prefs_install_products_form)
3. You can configure the plugin in teh ZMI in
   /acl_users/password_strength_plugin/manage_propertiesForm

That's it! Test it out.

Implementation
==============

A PAS plugin for Validation checks the password against each regular
expression listed in the properties. Any rules that fail result in
the associated error messages being returned.

TODO
====

1. Do password expiration?


Contribute
==========

- Source Code: https://github.com/collective/Products.PasswordStrength/
- Issue Tracker: https://github.com/collective/Products.PasswordStrength/issues


License
==========================

License BSD-ish, see LICENSE.txt

Credits
=======

Original Author: Dylan Jay <software@pretaweb.com>. Sponsored by PretaGov.com

Thanks to Daniel Nouri and BlueDynamics for their
NoDuplicateLogin which served as the base for this.

Thanks to the following for improvements to this plugin:

- sgeulette
- pysailor
- regebro
- macagua
- pbauer


Changes
=======

0.5.0 (2024-09-26)
------------------

- Add support for Python 3, Plone 5.2 and Plone 6. Drop support for Plone 5.1 and older.
  [pbauer, djay]

- Fix can not change weak password
  [ivanteoh]


0.4 (2015-06-05)
----------------

- Updated Spanish translation.
  [macagua]
- Removed old code and templates
  [djay]
- Added buildout and robot tests for Plone 4.1, 4.2, 4.3
  [sgeulette]
- Dont't skip password validation for manager
  [sgeulette]
- Skip password validation for generated password
  [sgeulette]
- Added i18n and french translation.
  [sgeulette]
- Added travis configuration
  [sgeulette]
- Added pwreset_form and test
  [sgeulette]

0.3.2 (2015-06-05)
------------------

- Updated README file. [macagua]
- Added QA and testing buildout configuration. [macagua]
- Added more strings classifiers items for this packages. [macagua]
- Added Spanish translation. [macagua]
- Added i18n support. [macagua]

0.3.1 (2013-11-20)
------------------

- Bugfix for use inside change-password
- Don't validate password strength of old password
  [pysailor]

0.3 (2013-08-18)
----------------

- Added a monkey-patch for the zope.schema Password field to validate
  the password. This is necessary for the Plone 4 @@new-user form to
  work well. [regebro]


Earlier versions
----------------

0.2 - Packaged as egg. Plone 3.1 compatible

0.1 - Initial version. Plone 2.5 compatible