Administrator
5 hours ago f1cf8741bad27ff99e644ad9cfa5458c78d79501
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
-- ============================================================
-- 防火墙站点表
-- ============================================================
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);