On Aug 21, 2011, at 8:17 PM, Massimo Di Pierro wrote:

> Do you suggest reverting the patch?

It does break existing installations.

The real fix is to enforce password-strength rules when passwords are being 
generated, but not when they're being checked. 

> 
> On Aug 21, 3:14 pm, Jonathan Lundell <jlund...@pobox.com> wrote:
>> On Aug 21, 2011, at 11:20 AM, Anthony wrote:
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>>> On Sunday, August 21, 2011 1:56:00 PM UTC-4, Jonathan Lundell wrote:
>>> On Aug 21, 2011, at 9:27 AM, Jonathan Lundell wrote:
>>>> On Aug 21, 2011, at 8:33 AM, Jonathan Lundell wrote:
>> 
>>>>> I do something like this. Your details might vary.
>> 
>>>>> #  invoke IS_STRONG only for password creation, not password checking
>>>>> if "login" not in request.args:
>>>>>   auth.settings.table_user.password.requires.insert(0, IS_STRONG(min=8, 
>>>>> max=0, special=1))
>> 
>>>>> ...but I also define the entire auth table, so Massimo's method is 
>>>>> handier if you're using the default.
>> 
>>>>> I think it'd be good if auth worked this way by default. There's no 
>>>>> reason to enforce IS_STRONG on login, and actually there's good reason 
>>>>> *not* to, since it enables an attacker to learn things about the actual 
>>>>> password.
>> 
>>>> Actually, as I review the source, the only place I see IS_STRONG being 
>>>> invoked by default is in the admin app. So if you're adding IS_STRONG to 
>>>> your auth forms, just make it conditional as above.
>> 
>>> ...and if that's right, perhaps we could put something like that (but with 
>>> a default IS_STRONG call?) into the scaffolding app, as an example.
>> 
>>> Looks like the recent change in trunk was to CRYPT, not IS_STRONG. CRYPT 
>>> now checks for a minimum password length, which defaults to 4. If you're 
>>> already using IS_STRONG, then I suppose you could just set the min_length 
>>> argument of CRYPT to 1.
>> 
>> Except that CRYPT is invoked inside Auth.
>> 
>> 1) I don't see a good reason for enforcing password length in CRPYT, and 2) 
>> password length (or strength) should never be enforced while checking.


Reply via email to