[Checkins] SVN: z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/ more specific exceptions on wrong passwords
Adam Groszer
agroszer at gmail.com
Fri Jan 29 11:17:37 EST 2010
Log message for revision 108641:
more specific exceptions on wrong passwords
Changed:
U z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/README.txt
U z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/interfaces.py
U z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/password.py
U z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/principal.py
-=-
Modified: z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/README.txt
===================================================================
--- z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/README.txt 2010-01-29 16:08:03 UTC (rev 108640)
+++ z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/README.txt 2010-01-29 16:17:37 UTC (rev 108641)
@@ -167,12 +167,12 @@
>>> pwd.verify('FOOBAR123')
Traceback (most recent call last):
...
- TooFewGroupCharacters
+ TooFewGroupCharactersLowerLetter
>>> pwd.verify('foobAR123')
Traceback (most recent call last):
...
- TooFewGroupCharacters
+ TooFewGroupCharactersLowerLetter
>>> pwd.verify('foobaR123')
@@ -191,12 +191,12 @@
>>> pwd.verify('foobar123')
Traceback (most recent call last):
...
- TooFewGroupCharacters
+ TooFewGroupCharactersUpperLetter
>>> pwd.verify('FOOBar123')
Traceback (most recent call last):
...
- TooFewGroupCharacters
+ TooFewGroupCharactersUpperLetter
>>> pwd.verify('fOOBAR123')
@@ -215,12 +215,12 @@
>>> pwd.verify('foobar123')
Traceback (most recent call last):
...
- TooFewGroupCharacters
+ TooFewGroupCharactersDigits
>>> pwd.verify('FOOBa1234')
Traceback (most recent call last):
...
- TooFewGroupCharacters
+ TooFewGroupCharactersDigits
>>> pwd.verify('fOBA12345')
@@ -239,12 +239,12 @@
>>> pwd.verify('foo(bar)')
Traceback (most recent call last):
...
- TooFewGroupCharacters
+ TooFewGroupCharactersSpecials
>>> pwd.verify('FO.#(Ba1)')
Traceback (most recent call last):
...
- TooFewGroupCharacters
+ TooFewGroupCharactersSpecials
>>> pwd.verify('fO.,;()5')
@@ -262,12 +262,12 @@
>>> pwd.verify('foobar'+unichr(0x0c3)+unichr(0x0c4))
Traceback (most recent call last):
...
- TooFewGroupCharacters
+ TooFewGroupCharactersOthers
>>> pwd.verify('foobar'+unichr(0x0c3)+unichr(0x0c4)+unichr(0x0e1))
Traceback (most recent call last):
...
- TooFewGroupCharacters
+ TooFewGroupCharactersOthers
>>> pwd.verify('fOO'+unichr(0x0e1)*5)
Modified: z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/interfaces.py
===================================================================
--- z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/interfaces.py 2010-01-29 16:08:03 UTC (rev 108640)
+++ z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/interfaces.py 2010-01-29 16:17:37 UTC (rev 108641)
@@ -43,6 +43,25 @@
class TooFewGroupCharacters(InvalidPassword):
__doc__ = _('''Password does not contain enough characters of one group.''')
+class TooFewGroupCharactersLowerLetter(TooFewGroupCharacters):
+ __doc__ = _(
+ '''Password does not contain enough characters of lowercase letters.''')
+
+class TooFewGroupCharactersUpperLetter(TooFewGroupCharacters):
+ __doc__ = _(
+ '''Password does not contain enough characters of uppercase letters.''')
+
+class TooFewGroupCharactersDigits(TooFewGroupCharacters):
+ __doc__ = _('''Password does not contain enough characters of digits.''')
+
+class TooFewGroupCharactersSpecials(TooFewGroupCharacters):
+ __doc__ = _(
+ '''Password does not contain enough characters of special characters.''')
+
+class TooFewGroupCharactersOthers(TooFewGroupCharacters):
+ __doc__ = _(
+ '''Password does not contain enough characters of other characters.''')
+
class TooFewUniqueCharacters(InvalidPassword):
__doc__ = _('''Password does not contain enough unique characters.''')
Modified: z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/password.py
===================================================================
--- z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/password.py 2010-01-29 16:08:03 UTC (rev 108640)
+++ z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/password.py 2010-01-29 16:17:37 UTC (rev 108641)
@@ -146,23 +146,23 @@
if (self.minLowerLetter is not None
and num_lower_letters < self.minLowerLetter):
- raise interfaces.TooFewGroupCharacters()
+ raise interfaces.TooFewGroupCharactersLowerLetter()
if (self.minUpperLetter is not None
and num_upper_letters < self.minUpperLetter):
- raise interfaces.TooFewGroupCharacters()
+ raise interfaces.TooFewGroupCharactersUpperLetter()
if (self.minDigits is not None
and num_digits < self.minDigits):
- raise interfaces.TooFewGroupCharacters()
+ raise interfaces.TooFewGroupCharactersDigits()
if (self.minSpecials is not None
and num_specials < self.minSpecials):
- raise interfaces.TooFewGroupCharacters()
+ raise interfaces.TooFewGroupCharactersSpecials()
if (self.minOthers is not None
and num_others < self.minOthers):
- raise interfaces.TooFewGroupCharacters()
+ raise interfaces.TooFewGroupCharactersOthers()
if (self.minUniqueCharacters is not None
and len(uniqueChars) < self.minUniqueCharacters):
Modified: z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/principal.py
===================================================================
--- z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/principal.py 2010-01-29 16:08:03 UTC (rev 108640)
+++ z3c.password/branches/adamg-tooManyLoginFailures/src/z3c/password/principal.py 2010-01-29 16:17:37 UTC (rev 108641)
@@ -141,8 +141,7 @@
return None
def checkFailedAttempt(self):
- #failed attempt, record it, increase counter
- #(in case we have to)
+ #failed attempt, record it, increase counter (in case we have to)
validRequest = True
fac = self._failedAttemptCheck()
if fac == interfaces.TML_CHECK_ALL:
More information about the checkins
mailing list