[PATCH 2/4] Don't allow weak root passwords
Samantha N. Bueno
sbueno+anaconda at redhat.com
Tue Jan 27 18:02:52 UTC 2015
On Mon, Jan 26, 2015 at 05:33:25PM -0800, Brian C. Lane wrote:
> Remove the double done click for weak passwords. Root passwords must
> meet pwquality's minimum requirements in order to be used.
Should this behavior also be mirrored in text mode? I think the
YesNoDialog could probably just be removed from EditTUIDialog and that
should probably be ok.
> ---
> pyanaconda/ui/gui/spokes/password.py | 27 +++++++--------------------
> 1 file changed, 7 insertions(+), 20 deletions(-)
>
> diff --git a/pyanaconda/ui/gui/spokes/password.py b/pyanaconda/ui/gui/spokes/password.py
> index 186e802..a7a65fb 100644
> --- a/pyanaconda/ui/gui/spokes/password.py
> +++ b/pyanaconda/ui/gui/spokes/password.py
> @@ -32,7 +32,7 @@ from pyanaconda.ui.helpers import InputCheck
>
> from pyanaconda.constants import PASSWORD_EMPTY_ERROR, PASSWORD_CONFIRM_ERROR_GUI,\
> PASSWORD_STRENGTH_DESC, PASSWORD_WEAK, PASSWORD_WEAK_WITH_ERROR,\
> - PASSWORD_WEAK_CONFIRM, PASSWORD_WEAK_CONFIRM_WITH_ERROR, PW_ASCII_CHARS, PASSWORD_ASCII
> + PW_ASCII_CHARS, PASSWORD_ASCII
>
> __all__ = ["PasswordSpoke"]
>
> @@ -86,7 +86,6 @@ class PasswordSpoke(FirstbootSpokeMixIn, NormalSpoke, GUISpokeInputCheckHandler)
> self.add_check(self.confirm, self._checkPasswordEmpty)
>
> # Counters for checks that ask the user to click Done to confirm
> - self._waiveStrengthClicks = 0
> self._waiveASCIIClicks = 0
>
> # Password validation data
> @@ -209,7 +208,6 @@ class PasswordSpoke(FirstbootSpokeMixIn, NormalSpoke, GUISpokeInputCheckHandler)
> pwtext = self.pw.get_text()
>
> # Reset the counters used for the "press Done twice" logic
> - self._waiveStrengthClicks = 0
> self._waiveASCIIClicks = 0
>
> self._pwq_valid, strength, self._pwq_error = validatePassword(pwtext, "root")
> @@ -250,18 +248,10 @@ class PasswordSpoke(FirstbootSpokeMixIn, NormalSpoke, GUISpokeInputCheckHandler)
>
> if pwstrength < 2:
> # If Done has been clicked twice, waive the check
> - if self._waiveStrengthClicks > 1:
> - return InputCheck.CHECK_OK
> - elif self._waiveStrengthClicks == 1:
> - if self._pwq_error:
> - return _(PASSWORD_WEAK_CONFIRM_WITH_ERROR) % self._pwq_error
> - else:
> - return _(PASSWORD_WEAK_CONFIRM)
> + if self._pwq_error:
> + return _(PASSWORD_WEAK_WITH_ERROR) % self._pwq_error
> else:
> - if self._pwq_error:
> - return _(PASSWORD_WEAK_WITH_ERROR) % self._pwq_error
> - else:
> - return _(PASSWORD_WEAK)
> + return _(PASSWORD_WEAK)
> else:
> return InputCheck.CHECK_OK
>
> @@ -283,13 +273,10 @@ class PasswordSpoke(FirstbootSpokeMixIn, NormalSpoke, GUISpokeInputCheckHandler)
> return InputCheck.CHECK_OK
>
> def on_back_clicked(self, button):
> - # If the failed check is for password strenght or non-ASCII
> - # characters, add a click to the counter and check again
> + # If the failed check is for non-ASCII characters,
> + # add a click to the counter and check again
> failed_check = next(self.failed_checks_with_message, None)
> - if failed_check == self._pwStrengthCheck:
> - self._waiveStrengthClicks += 1
> - self._pwStrengthCheck.update_check_status()
> - elif failed_check == self._pwASCIICheck:
> + if failed_check == self._pwASCIICheck:
> self._waiveASCIIClicks += 1
> self._pwASCIICheck.update_check_status()
>
> --
> 1.9.3
>
> _______________________________________________
> anaconda-patches mailing list
> anaconda-patches at lists.fedorahosted.org
> https://lists.fedorahosted.org/mailman/listinfo/anaconda-patches
More information about the anaconda-patches
mailing list