May 17, 2026, 11:40 PM

This commit is contained in:
Paweł Domański
2026-05-18 06:40:19 +00:00
commit 64944cf004
896 changed files with 310709 additions and 0 deletions
@@ -0,0 +1,78 @@
#!/bin/bash
DBNAME="postgres"
USER="-U postgres"
PORT="-p 5432"
usage() {
echo "Usage: $0 [-d <dbname> -h <host> -U <user> -p <port> u]"
exit 1
}
while getopts "d:h:p:uU:" OPT;
do case "${OPT}" in
d) DBNAME=$OPTARG
;;
h) HOST="-h $OPTARG"
;;
p) PORT="-p $OPTARG"
;;
U) USER="-U $OPTARG"
;;
u) usage
;;
[?]) usage
esac;
done
allow_logins()
{
CNT=$(psql $HOST $PORT $USER $DBNAME <<_QUERY_
UPDATE pg_authid au
SET rolcanlogin = TRUE
FROM pg_lockout lo
WHERE au.rolname = lo.rolname;
_QUERY_
)
}
current_user()
{
CUSER=$(psql -t $HOST $PORT $USER $DBNAME <<_QUERY_
SELECT TRIM(BOTH FROM current_user);
_QUERY_
)
}
###############################################################
# MAIN #
###############################################################
current_user
if [ $CUSER != "postgres" ]
then
echo "You must be postgres to execute this script."
echo "Aborting."
exit 1
fi
allow_logins
echo "Users allowed to login = $CNT"
exit 0