Kurz gesagt: Mit einem MariaDB-Administratorkonto bei Adminer anmelden und anschließend einen Sensorbenutzer mit geringsten erforderlichen Berechtigungen erstellen
Der normale CasaOS-Benutzer ist nicht automatisch MariaDB-Administrator. Datenbankberechtigungen werden innerhalb von MariaDB verwaltet. Verwenden Sie die für den Container festgelegten MariaDB-Root-/Administrator-Anmeldedaten und erstellen Sie anschließend eine separate Datenbank sowie ein Sensorkonto, das nur dort Einträge vornehmen darf, wo dies erforderlich ist.
Datenbank und eingeschränkten Benutzer erstellen
CREATE DATABASE sensor_data
CHARACTER SET utf8mb4
COLLATE utf8mb4_unicode_ci;
CREATE USER 'sensor_writer'@'192.168.1.%'
IDENTIFIED BY 'REPLACE_WITH_A_STRONG_PASSWORD';
GRANT INSERT ON sensor_data.readings
TO 'sensor_writer'@'192.168.1.%';
SHOW GRANTS FOR 'sensor_writer'@'192.168.1.%';
Die Dokumentation zu MariaDBs CREATE USER und GRANT beschreibt das Berechtigungsmodell.
Einen engeren Hostbereich als % verwenden
MariaDB-Konten haben das Format 'user'@'host'. Beschränken Sie das Konto auf das Sensornetzwerk oder bestimmte IP-Adressen, anstatt jeden Host zuzulassen. Der Leitfaden zum Remote-Zugriff behandelt Host-Berechtigungen sowie das Binden und Lauschen.
Adminer ist nur die Verwaltungsoberfläche
Adminer kann keine Berechtigungen außerhalb der bereits für das angemeldete MariaDB-Konto geltenden Berechtigungen erstellen. Wenn bei der Anmeldung mit einem Konto mit geringen Berechtigungen „Zugriff verweigert“ angezeigt wird, wechseln Sie für die Verwaltung von Schema und Benutzern zum Datenbankadministratorkonto. Der Leitfaden zu Hardware und Bereitstellung von Adminer und der MariaDB-Hardwareleitfaden trennen die Benutzeroberfläche vom Datenbankserver.
Port 3306 nur für das benötigte LAN-Segment freigeben
Remote-Sensoren benötigen TCP-Zugriff auf MariaDB. Das bedeutet jedoch nicht, dass die Datenbank im öffentlichen Internet erreichbar sein sollte. Binden und veröffentlichen Sie sie nur im vertrauenswürdigen LAN, verwenden Sie bei Bedarf eine Firewall und testen Sie den Zugriff zunächst von einem Sensorhost aus, bevor Sie ihn erweitern.
Sichern, bevor das Sensorprojekt wichtig wird
Sobald die Messwerte wichtig sind, sichern Sie die Datenbank – nicht nur den Container. Persistenter Speicher, SQL-Dumps und Wiederherstellungstests sind wichtiger als die Adminer-Oberfläche selbst. Das Hardwareverzeichnis des ZimaOS App Store hilft bei der Dimensionierung des gesamten Stacks.
