Admin erstellen

Für einige Interaktionen mit BOMnipotent ist ein Benutzer mit Administratorrechten erforderlich. Eine davon ist die Gewährung von Administratorrechten an einen neuen Benutzer. Dies bedeutet, dass eine Art Bootstrapping-Mechanismus erforderlich ist.

Schritt 1: Benutzer erstellen

Zuerst müssen Sie ein Benutzerkonto erstellen :

Eingabe (lange Variante)
bomnipotent_client --domain=bomnipotent_server_of_your_choice user request admin@example.com
Eingabe (kurze Variante)
bomnipotent_client -d bomnipotent_server_of_your_choice user request admin@example.com
Ausgabe
[INFO] Generating new key pair
[INFO] Storing secret key to '/root/.config/bomnipotent/secret_key.pem' and public key to '/root/.config/bomnipotent/public_key.pem'
[INFO] User request submitted. A verification email has been sent to your inbox. The verification link expires after 1h.

Sobald Sie Ihre Email Adresse bestätigt haben, können Sie dies in den Logs sehen.

Eingabe
docker logs bomnipotent_server -n 2
Ausgabe
[INFO] Received GET request from 172.20.0.4 to /user/verify
[INFO] Email verification successful for admin@example.com

Um etwas Arbeit beim Tippen zu sparen, speichern Sie die Domäne Ihres Servers und Ihre E-Mail-Adresse in einer Benutzersitzung :

Eingabe (lange Variante)
bomnipotent_client --domain=bomnipotent_server_of_your_choice --user=admin@example.com session login
Eingabe (kurze Variante)
bomnipotent_client -d bomnipotent_server_of_your_choice -u admin@example.com session login
Ausgabe
[INFO] Storing session data in /root/.config/bomnipotent/session.toml

Schritt 2: Benutzer als TMP-Administrator markieren

Aus Sicherheitsgründen muss der Benutzer zu diesem Zeitpunkt bereits in der Datenbank vorhanden sein. Andernfalls könnte ein böswilliger Akteur die E-Mail-Adresse, die Sie für Ihren Administrator verwenden, erraten und zu einem geeigneten Zeitpunkt eine eigene Anfrage stellen. Um dies zu verhindern, blockiert der TMP-Admin-Mechanismus alle Anfragen, diesen bestimmten Benutzer neu zur Datenbank hinzuzufügen.

Als Nächstes werden Sie zu dem Benutzermanager, der in der Serverantwort erwähnt wurde: Melden Sie sich bei Ihrem Servercomputer an und stellen Sie in Ihrer Serverkonfigurationsdatei die folgende Zeile an das Ende:

[user]
tmp_admin = "admin@example.com"

Ihre Serverprotokolle sollten jetzt zeigen, dass die Konfiguration zusätzlich zu der Benutzeranfrage, die Sie zuvor gestellt haben, neu geladen wurde.

Schritt 3: Benutzer zum Volladministrator machen

Der Server behandelt authentifizierte Anfragen dieses Benutzers jetzt so, als wäre die Person ein Administrator. Um dauerhafter Administrator zu werden, müssen Sie zuerst Ihre Benutzeranfrage genehmigen. Zurück auf dem Client rufen Sie:

Eingabe
bomnipotent_client user approve admin@example.com
Ausgabe
[INFO] Changed status of admin@example.com to APPROVED.

Jetzt können Sie sich selbst zum vollwertigen Serveradministrator machen:

Eingabe
bomnipotent_client user-role add admin@example.com admin
Ausgabe
[INFO] Added role to user.

Schritt 4: TMP-Administratormarkierung entfernen

Der Status eines temporären Administrators soll, nun ja, temporär sein. Der Server protokolliert eine Warnung, wenn Sie temporäre Zugriffsrechte verwenden:

Eingabe
docker logs bomnipotent_server -n 4
Ausgabe
[WARN] Temporary admin functionality is enabled for admin@example.com
[INFO] User admin@example.com was authenticated as a temporary admin
[INFO] Temporary admin 'admin@example.com' has permission USER_MANAGEMENT to perform this action.
[INFO] Added role to user.

Aber nachdem Sie sich nun erfolgreich zum permanenten Admin gemacht haben, können und sollten Sie das Feld “tmp_admin” wieder aus der Konfigurationsdatei entfernen.

Sie sind nun bereit, Ihr Abonnement zu aktivieren .