Benutzerkonfiguration - user.toml
In der TOML-Datei users.toml
werden die Benutzer, ihr Passwort, Rollen und Kartenschlüssel gespeichert. Die Datei befindet sich üblicherweise in /etc/bffh/
.
Beispielrollen
Rollen werden in der bffh.dhall-Konfiguration definiert. Das Docker-compose Repository https://gitlab.com/fabinfra/fabaccess/dockercompose hat ein gutes Beispiel:
[Admin1]
roles = ["Admin"]
passwd = "secret"
noot = "noot!"
cardkey = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
[Admin2]
roles = ["Admin"]
passwd = "secret"
noot = "noot!"
cardkey = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
[ManagerA1]
roles = ["ManageA", "UseA", "ReadA", "DiscloseA"]
passwd = "secret"
noot = "noot!"
cardkey = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
[ManagerA2]
roles = ["ManageA", "UseA", "ReadA", "DiscloseA"]
passwd = "secret"
noot = "noot!"
cardkey = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
[ManagerB1]
roles = ["ManageB", "UseB", "ReadB", "DiscloseB"]
passwd = "secret"
noot = "noot!"
cardkey = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
[ManagerB2]
roles = ["ManageB", "UseB", "ReadB", "DiscloseB"]
passwd = "secret"
noot = "noot!"
cardkey = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
[ManagerC1]
roles = ["ManageC", "UseC", "ReadC", "DiscloseC"]
passwd = "secret"
noot = "noot!"
cardkey = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
Manuelles Anlegen neuer Benutzer
Lasse alle neuen Nutzer ihre Passwörter verschlüsselt an den Admin übertragen, indem diese ihr Passwort als verschlüsselten Argon2 String übermitteln.
argon2 Passwort Auf der Kommandozeile erzeugen ...
... mit Ubuntu Linux
apt install argon2
PASSWORD="PASSWORD"mypassword" && echo | argon2 $PASSWORD -i -k 4096 -p 1 -t 3 -l 16
... mit Windows
Eine Implementierung für Windows gibt es zum Beispiel unter https://github.com/philr/argon2-windows
Wir laden das Release-Zip herunter, entpacken es und führen Argo2Opt.exe
aus:
set PASSWORD="mypassword"
echo %PASSWORD% | Argon2Opt.exe %PASSWORD% -i -k 4096 -p 1 -t 3 -l 16
Wir übermitteln die kodierte Zeichenkette in die users.toml
, hier im Beispiel: $argon2i$v=19$m=4096,t=3,p=1$UEFTU1dPUkQ$VMwncjCWdW+f6x8qzshLaA
. Der Eintrag in der users.toml
könnte so lauten:
[vmario]
roles = ["mitglied"]
passwd = "$argon2i$v=19$m=4096,t=3,p=1$UEFTU1dPUkQ$VMwncjCWdW+f6x8qzshLaA"
cardkey = "70AFE9E6B1D6352313C2D336ADC2777A"
argon2 Passwort mit Argon2 Hash Generator Tool
Settings:
- Salt: einen neuen erzeugen durch Klicken auf das Zahnrad
- Parallelism Factor: 1
- Memory Cost: 4096
- Iterations: 3
- Hash Length: 16
Wir übermitteln die kodierte Zeichenkette, hier im Beispiel: $argon2i$v=19$m=4096,t=3,p=1$QkkyWERYNEdnQVBWSzhTQg$Lv2mrx+YRtoNrV1eDjhZcg