-- ============================================================
|
-- 防火墙站点表
|
-- ============================================================
|
DROP TABLE IF EXISTS firewall_site;
|
CREATE TABLE firewall_site (
|
ID BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
|
REVISION INT DEFAULT 1 COMMENT '乐观锁',
|
CREATED_BY VARCHAR(32) DEFAULT 'system' COMMENT '创建人',
|
CREATED_TIME DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
UPDATED_BY VARCHAR(32) DEFAULT 'system' COMMENT '更新人',
|
UPDATED_TIME DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
SITE_NAME VARCHAR(100) NOT NULL COMMENT '站点名称',
|
DOMAIN VARCHAR(200) NOT NULL COMMENT '站点域名',
|
NGINX_CONF VARCHAR(255) COMMENT 'Nginx配置文件路径',
|
STATUS TINYINT DEFAULT 1 COMMENT '状态:1-启用,0-禁用',
|
REMARK VARCHAR(255) COMMENT '备注',
|
PRIMARY KEY (ID),
|
UNIQUE KEY uk_domain (DOMAIN)
|
) COMMENT = '防火墙站点表';
|
|
-- ============================================================
|
-- 国家白名单规则表
|
-- ============================================================
|
DROP TABLE IF EXISTS firewall_country_rule;
|
CREATE TABLE firewall_country_rule (
|
ID BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
|
REVISION INT DEFAULT 1 COMMENT '乐观锁',
|
CREATED_BY VARCHAR(32) DEFAULT 'system' COMMENT '创建人',
|
CREATED_TIME DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
UPDATED_BY VARCHAR(32) DEFAULT 'system' COMMENT '更新人',
|
UPDATED_TIME DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
SITE_ID BIGINT NOT NULL COMMENT '站点ID,关联firewall_site表',
|
COUNTRY_CODE VARCHAR(10) NOT NULL COMMENT '国家编码(ISO 3166-1 alpha-2,如 JP/US/SG)',
|
COUNTRY_NAME VARCHAR(50) COMMENT '国家名称',
|
ENABLED TINYINT DEFAULT 1 COMMENT '状态:1-启用,0-禁用',
|
PRIMARY KEY (ID),
|
UNIQUE KEY uk_site_country (SITE_ID, COUNTRY_CODE),
|
INDEX idx_site_id (SITE_ID)
|
) COMMENT = '防火墙国家白名单规则表';
|
|
-- ============================================================
|
-- IP白名单表
|
-- ============================================================
|
DROP TABLE IF EXISTS firewall_ip_white;
|
CREATE TABLE firewall_ip_white (
|
ID BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
|
REVISION INT DEFAULT 1 COMMENT '乐观锁',
|
CREATED_BY VARCHAR(32) DEFAULT 'system' COMMENT '创建人',
|
CREATED_TIME DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
UPDATED_BY VARCHAR(32) DEFAULT 'system' COMMENT '更新人',
|
UPDATED_TIME DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
SITE_ID BIGINT NOT NULL COMMENT '站点ID',
|
IP VARCHAR(64) NOT NULL COMMENT 'IP地址(支持IPv4/IPv6)',
|
REMARK VARCHAR(255) COMMENT '备注',
|
EXPIRE_TIME DATETIME COMMENT '过期时间,NULL表示永久有效',
|
ENABLED TINYINT DEFAULT 1 COMMENT '状态:1-启用,0-禁用',
|
PRIMARY KEY (ID),
|
UNIQUE KEY uk_site_ip (SITE_ID, IP),
|
INDEX idx_ip (IP)
|
) COMMENT = '防火墙IP白名单表';
|
|
-- ----------------------------
|
-- 默认数据
|
-- ----------------------------
|
INSERT INTO firewall_site (SITE_NAME, DOMAIN, STATUS) VALUES
|
('默认站点', 'shop.xxx.com', 1);
|