fix(backend): bootstrap admin from env instead of seeding admin/admin
007_seed_data.sql shipped a fixed admin account whose bcrypt hash decodes to the password "admin", giving every deployment the same known credentials. The seed row is removed; UserService.EnsureAdmin now creates the administrator on startup from ADMIN_USERNAME / ADMIN_PASSWORD. It is idempotent and never overwrites an existing password, so an operator who rotates the admin password keeps it across restarts. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -38,12 +38,12 @@ INSERT INTO activity.action_types (name) VALUES
|
||||
-- Sessions
|
||||
('session_terminate');
|
||||
|
||||
INSERT INTO core.users (name, password, is_admin, can_create) VALUES
|
||||
('admin', '$2a$10$zk.VTFjRRxbkTE7cKfc7KOWeZfByk1VEkbkgZMJggI1fFf.yDEHZy', true, true);
|
||||
-- The initial administrator is created at application startup from the
|
||||
-- ADMIN_USERNAME / ADMIN_PASSWORD environment variables (see UserService.
|
||||
-- EnsureAdmin), so no default credentials are seeded here.
|
||||
|
||||
-- +goose Down
|
||||
|
||||
DELETE FROM core.users WHERE name = 'admin';
|
||||
DELETE FROM activity.action_types;
|
||||
DELETE FROM core.object_types;
|
||||
DELETE FROM core.mime_types;
|
||||
|
||||
Reference in New Issue
Block a user