misc: Add authentication init
This commit is contained in:
+20
-11
@@ -60,16 +60,25 @@ CREATE TABLE actors (
|
||||
FOREIGN KEY (data_type_id) REFERENCES data_types(id)
|
||||
);
|
||||
|
||||
-- Insert test device
|
||||
INSERT INTO devices (id, name, description, location, status_id)
|
||||
VALUES (UUID_TO_BIN(UUID()), 'TestDevice', 'Test device for development', 'Lab', 1);
|
||||
-- Users table for authentication
|
||||
CREATE TABLE users (
|
||||
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 INTO sensors (id, device_id, name, type, data_type_id)
|
||||
VALUES (UUID_TO_BIN(UUID()), @device_id, 'TestSensor', 'bool_sensor', 1);
|
||||
|
||||
-- Insert bool actor
|
||||
INSERT INTO actors (id, device_id, name, type, data_type_id)
|
||||
VALUES (UUID_TO_BIN(UUID()), @device_id, 'TestActor', 'bool_actor', 1);
|
||||
-- Insert default admin user (password: password)
|
||||
-- bcrypt hash of "password"
|
||||
INSERT INTO users (id, username, password_hash, email)
|
||||
VALUES (
|
||||
UUID_TO_BIN(UUID()),
|
||||
'admin',
|
||||
'$2a$10$y5R/aLl7Ah9GbdcR57f4ze0lX12suTJQvPyJwLE0RJXqWpg7lStAC',
|
||||
'admin@example.com'
|
||||
);
|
||||
Reference in New Issue
Block a user