feat(auth): add microsoft auto-remember policy with tenant override and configurable remember TTL
This commit is contained in:
@@ -204,6 +204,7 @@ CREATE TABLE IF NOT EXISTS `tenant_auth_microsoft` (
|
||||
`use_shared_app` TINYINT(1) NOT NULL DEFAULT 1,
|
||||
`client_id_override` VARCHAR(191) NULL,
|
||||
`client_secret_override_enc` TEXT NULL,
|
||||
`auto_remember_mode` TINYINT(1) NULL DEFAULT NULL,
|
||||
`created` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`modified` DATETIME NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
@@ -895,6 +896,8 @@ VALUES
|
||||
('system_audit_retention_days', '365', 'setting.system_audit_retention_days'),
|
||||
('frontend_telemetry_enabled', '0', 'setting.frontend_telemetry_enabled'),
|
||||
('frontend_telemetry_sample_rate', '0.2', 'setting.frontend_telemetry_sample_rate'),
|
||||
('frontend_telemetry_allowed_events', 'warn_once,ajax_error', 'setting.frontend_telemetry_allowed_events')
|
||||
('frontend_telemetry_allowed_events', 'warn_once,ajax_error', 'setting.frontend_telemetry_allowed_events'),
|
||||
('microsoft_auto_remember_default', '0', 'setting.microsoft_auto_remember_default'),
|
||||
('remember_token_lifetime_days', '30', 'setting.remember_token_lifetime_days')
|
||||
ON DUPLICATE KEY UPDATE
|
||||
`key` = `key`;
|
||||
|
||||
24
db/updates/2026-03-10-microsoft-auto-remember.sql
Normal file
24
db/updates/2026-03-10-microsoft-auto-remember.sql
Normal file
@@ -0,0 +1,24 @@
|
||||
-- Idempotent update: add Microsoft auto-remember and token TTL settings,
|
||||
-- plus tenant-level auto_remember_mode column.
|
||||
|
||||
INSERT INTO `settings` (`key`, `value`, `description`)
|
||||
VALUES
|
||||
('microsoft_auto_remember_default', '0', 'setting.microsoft_auto_remember_default'),
|
||||
('remember_token_lifetime_days', '30', 'setting.remember_token_lifetime_days')
|
||||
ON DUPLICATE KEY UPDATE
|
||||
`key` = `key`;
|
||||
|
||||
-- Add auto_remember_mode to tenant_auth_microsoft (NULL = inherit global default).
|
||||
SET @col_exists = (
|
||||
SELECT COUNT(*) FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'tenant_auth_microsoft'
|
||||
AND COLUMN_NAME = 'auto_remember_mode'
|
||||
);
|
||||
SET @sql = IF(@col_exists = 0,
|
||||
'ALTER TABLE `tenant_auth_microsoft` ADD COLUMN `auto_remember_mode` TINYINT(1) NULL DEFAULT NULL AFTER `client_secret_override_enc`',
|
||||
'SELECT 1'
|
||||
);
|
||||
PREPARE stmt FROM @sql;
|
||||
EXECUTE stmt;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
Reference in New Issue
Block a user