changeset 2009:ce294a8635a5

Ensure generated passwords contain a non-alphanumeric character and digit
author Tom Gottfried <tom@intevation.de>
date Fri, 25 Jan 2019 13:09:17 +0100
parents dc497b62e073
children a1164d2e23e1 d61ca2b3fc12
files schema/install-db.sh
diffstat 1 files changed, 7 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/schema/install-db.sh	Fri Jan 25 10:42:46 2019 +0100
+++ b/schema/install-db.sh	Fri Jan 25 13:09:17 2019 +0100
@@ -47,8 +47,13 @@
 genpw()
 # $1 - length
 {
-  dd count=1 if=/dev/urandom 2>/dev/null \
-    | tr -cd '[:alnum:],._!?-' | tail -c "$1"
+  PW=''
+  until [ "$(grep '[^[:alnum:]]' <<<$PW)" -a "$(grep '[[:digit:]]' <<<$PW)" ]
+  do
+    PW=$(dd count=1 if=/dev/urandom 2>/dev/null \
+           | tr -cd '[:alnum:],._!?-' | tail -c "$1")
+  done
+  echo "$PW"
 }
 
 # Defaults: