misc: Add authentication init

This commit is contained in:
2026-02-05 18:11:00 +01:00
parent 9f71c8f1a6
commit 904dbd7b1c
+20 -11
View File
@@ -60,16 +60,25 @@ CREATE TABLE actors (
FOREIGN KEY (data_type_id) REFERENCES data_types(id) FOREIGN KEY (data_type_id) REFERENCES data_types(id)
); );
-- Insert test device -- Users table for authentication
INSERT INTO devices (id, name, description, location, status_id) CREATE TABLE users (
VALUES (UUID_TO_BIN(UUID()), 'TestDevice', 'Test device for development', 'Lab', 1); id BINARY(16) NOT NULL PRIMARY KEY,
username VARCHAR(50) NOT NULL UNIQUE,
password_hash VARCHAR(255) NOT NULL,
email VARCHAR(255),
created_at DATETIME(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6),
updated_at DATETIME(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
SET @device_id = (SELECT id FROM devices WHERE name = 'TestDevice' LIMIT 1); -- Create index on username for faster lookups
CREATE INDEX idx_username ON users(username);
-- Insert bool sensor -- Insert default admin user (password: password)
INSERT INTO sensors (id, device_id, name, type, data_type_id) -- bcrypt hash of "password"
VALUES (UUID_TO_BIN(UUID()), @device_id, 'TestSensor', 'bool_sensor', 1); INSERT INTO users (id, username, password_hash, email)
VALUES (
-- Insert bool actor UUID_TO_BIN(UUID()),
INSERT INTO actors (id, device_id, name, type, data_type_id) 'admin',
VALUES (UUID_TO_BIN(UUID()), @device_id, 'TestActor', 'bool_actor', 1); '$2a$10$y5R/aLl7Ah9GbdcR57f4ze0lX12suTJQvPyJwLE0RJXqWpg7lStAC',
'admin@example.com'
);