Nutzerdatenbank laden
Für das Laden der Nutzerdatenbank (users.toml) kann folgendes Script genutzt werden. Es prüft zunächst, ob die Konfiguration von bffh valid ist. Wenn nicht, wird nichts unternommen. Im Anschluss werden die Nutzer neu geladen und gleichzeitig wieder exportiert, um etwaige unverschüsselte Passwörter automatisch zu hashen.
Hinweis: Das Script basiert auf einem auf dem System aktiven systemd Service
vim /opt/fabinfra/scripts/bffh-load-users.sh
#/!bin/bash
#check config
BASE="/opt/fabinfra/bffh/target/release"
DATA="/opt/fabinfra/bffh-data"
CFG="$DATA/config/bffh.dhall"
$BASE/bffhd --check --config $CFG > /dev/null
if [ $? == 0 ]; then
#pre-check bffh.dhall
echo "Config is valid. Loading users ..."
$BASE/bffhd --verbose --config $CFG --load=$DATA/config/users.toml
#then load users.toml
$BASE/bffhd --verbose --config $CFG --dump-users /tmp/users.toml --force
#if this was successful and service is running, restart it, elso do nothing
if [ $? == 0 ]; then
cat /tmp/users.toml
FAS="fabaccess-bffh.service"
STATUS="$(systemctl is-active $FAS)"
if [ "${STATUS}" = "active" ]; then
echo "restarting $FAS"
systemctl restart $FAS
fi
fi
else
echo "Error: config is invalid!"
exit 1
fi
chmod +x /opt/fabinfra/scripts/bffh-load-users.sh