Kort samengevat: log in op Adminer met een MariaDB-beheerdersaccount en maak vervolgens een sensoraccount met minimale rechten
De normale CasaOS-gebruiker is niet automatisch een MariaDB-beheerder. Databaserechten worden binnen MariaDB beheerd. Gebruik de MariaDB-root-/beheerdersgegevens die voor de container zijn ingesteld en maak vervolgens een afzonderlijke database en een sensoraccount dat alleen op de benodigde locaties gegevens kan invoegen.
De database en beperkte gebruiker maken
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.%';
De documentatie van MariaDB voor CREATE USER en GRANT beschrijft het rechtenmodel.
Gebruik een beperktere hostscope dan %
MariaDB-accounts hebben de vorm 'user'@'host'. Beperk het account tot het sensorsubnet of specifieke IP-adressen in plaats van elke host toe te staan. De handleiding voor externe toegang behandelt hostrechten en bind-/luistergedrag.
Adminer is alleen de beheerinterface
Adminer maakt geen rechten aan buiten de rechten die het ingelogde MariaDB-account al heeft. Als “Access denied” verschijnt terwijl je bent ingelogd met een account met beperkte rechten, schakel dan over naar het databasebeheerdersaccount voor het beheren van schema's en gebruikers. De hardware- en implementatiehandleiding voor Adminer en de hardwarehandleiding voor MariaDB behandelen de interface en de databaseserver afzonderlijk.
Stel poort 3306 alleen beschikbaar voor het LAN-segment dat deze nodig heeft
Externe sensoren hebben TCP-toegang tot MariaDB nodig, maar dat betekent niet dat de database op het openbare internet hoort. Bind/publiceer de database alleen op het vertrouwde LAN, gebruik waar nodig een firewall en test vanaf één sensorhost voordat je de toegang uitbreidt.
Maak back-ups voordat het sensorproject belangrijk wordt
Zodra metingen belangrijk worden, moet je een back-up van de database maken, niet alleen van de container. Persistente opslag, SQL-dumps en hersteltests zijn belangrijker dan de Adminer-interface zelf. De hardwarecatalogus van de ZimaOS App Store helpt bij het dimensioneren van de bredere stack.
