互联网内容控制系统数据库表结构设计说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
互联网容控制系统数据库表结构设计说明书
1.数据库表结构
1.1. 地址库管理子系统数据库表结构
1.1.1.操作员信息表
系统的部用户分为两类:
◆超级用户(UserRight=2):系统初始化时生成超级用户,用户名/密码(root/root),
超级用户可增、删、改和查询管理员、操作员的信息。
◆管理员(UserRight=1):完成端口管理、关键字管理、安全模板管理、对操作员已确认
地址进行核查,不能维护管理员和操作员的资料。
◆操作员(UserRight=0):对黑/白地址和广告过滤库地址进行录入、确认、分类、修改
等操作。
create table ics_admin
(
UserId number(10) not null, /* 操作员编号,seq_userid.nextval*/ UserName varchar2(30) not null, /* 登录名*/ FullName varchar2(40) default '' , /* */
UserDesc varchar2(200) default '', /* 用户描述*/ UserRight number(5) not null, /* 用户权限 0-操作员 1-管理员 2-ROOT*/ Password varchar2(64) not null, /* 加密后的密码*/ UserStatus int not null, /* 状态 0-正常 1-暂停 2-注销*/ Email varchar2(80) not null, /* EMAIL地址*/ ContactNum varchar2(20) not null, /* 联系*/
Department varchar2(40) not null, /* 部门*/ AreaCode varchar2(32) not null, /* 归属地区*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/
ModifyTime date default sysdate, /* 修改日期*/ BatchMaxNum number(5) default 0 /* 一次批量确认地址的最大数量*/ );
索引:
对UserName唯一索引
对UserId唯一索引
1.1.
2.搜索关键字定义表
◆搜索引擎根据该表配置的数据作为关键字在常用的搜索引擎门户(如google,baidu
等)中进行深度和广度搜索,搜索得到的地址存入库ics_original等待操作员进行确认。
◆该表数据由WEB管理工具进行维护(增、删、改、查询)。
create table ics_keyinfo
(
SubClassId number(10) not null, /* 地址3级分类,url_class定义*/ KeyName varchar2(40) not null, /* 关键字*/ KeyFlag number(5) default 0, /* 0-正常 1-无效*/ DealCount number(5) not null, /* 处理次数*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate, /* 修改日期*/ SubClassId2 number(10) default 0, /* 地址分类,2级*/ Priority number(5) default 0 /* 搜索优先级,0最低*/ );
索引:
对subClassId + KeyName唯一索引
1.1.3.自动确认关键字定义表
◆搜索引擎根据该表配置数据对搜索到的地址进行自动确认,搜索得到的地址数据不存入
表ics_original而直接放入地址库表url_templet。
自动确认的判断条件为URL域名中包含所配置的关键字,有如下两种匹配方式:
●全匹配:如配置为org,则匹配成功,.abcorg.匹配不成功。
●部分匹配:只要域名中包含所配置关键字则认为匹配成功。
◆自动匹配的地址需要根据域名得到域名对应的IP地址写入表hostname_info和
ip_info,并在操作记录表urlinfo_operate、hostinfo_operate中记录更新信息,用于进行数据同步。
◆该表数据由WEB管理工具进行维护(增、删、改、查询)。
create table ics_keyinfo_confirm
(
SubClassId number(10) not null, /* 地址分类,3级*/ KeyName varchar2(40) not null, /* 关键字*/ KeyFlag number(5) not null, /* 0-正常 1-无效*/ ConfirmMatch number(5) not null, /* 0-全匹配, 1-部分匹配*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate, /* 修改日期*/ SubClassId2 number(10) default 0 /* 地址分类,2级*/ );
索引:
对SubClassId + KeyName唯一索引
1.1.4.搜索模板表
create table ics_search_templet
(
HostName varchar2(80) not null, /* 域名
*/
UrlPath varchar2(80) not null, /* 路径(不包括域名)*/
DealCount number(5) default 0, /* 处理次数
*/
SubClassId number(10) not null, /* 地址分类,3级*/
Depth number(5) not null, /* 搜索深度
*/
CreateOperator number(10) not null, /* 开户操作员号
*/
CreateTime date not null, /* 创建日
期*/
ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate,/* 修改日期
*/
Priority number(5) default 0, /* 搜索优先级,0最低*/
SubClassId2 number(10) default 0 /* 地址分类,2级*/ )
索引:
对HostName + UrlPath唯一索引
对DealCount索引
1.1.5.黑原始地址信息表
搜索引擎以关键字搜索和URL深度搜索方式得到的未确认URL地址存入该表,操作员通过管理工具从该表获取数据进行确认和核查操作,确认后修改DealResult字段标志值,不从该表删除已确认的记录。
该表中的地址数据同时作为搜索引擎进行下一次搜索的起点地址。
create table ics_original
(
SubClassId number(10) not null, /* 黑地址分类,3级*/
Depth number(5) not null, /* 搜索深度*/ DealFlag number(5) not null, /* 处理标志 0-未处理 1-已处理*/ ReadFlag number(5) not null,
/* 确认标志 0-未确认 1-手工确认 2-自动确认 */ DealResult number(10) not null, /* 处理结果*/ /* 0-未确认1-确认成功 2-无法访问 3-修改分类
4-地址无效 5-黑重复分类*/ HostName varchar2(80) not null, /* 域名*/ UrlPath varchar2(80) not null, /* 路径(不包括域名)*/ Title varchar2(40) , /* 标题
*/
TitleCount number(5) not null, /* 标题处理次数
*/
CreateOperator number(10) null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 修改操作员号*/ ModifyTime date default sysdate, /* 修改日期*/ Priority number(5) default 0, /* 搜索优先级,0最低*/ SubClassId2 number(10), /* 黑地址分类,2级*/
StpHostName varchar2(40) null /* 搜索种子域名*/ )
索引:
对HostName 唯一索引
对DealFlag + DealResult索引
对Priority索引
1.1.6.白原始地址库
create table ics_woriginal
(
SubClassId number(10) not null, /* 白地址分类,3级*/
Depth number(5) not null, /* 搜索深度*/ DealFlag number(5) not null, /* 处理标志 0-未处理 1-已处理*/ ReadFlag number(5) not null,
/* 确认标志 0-未确认 1-手工确认 2-自动确认 */ DealResult number(10) not null, /* 处理结果*/ /* 0-未确认1-确认成功 2-无法访问 3-修改分类
4-地址无效 5-重复分类*/ HostName varchar2(80) not null, /* 域名*/ UrlPath varchar2(80) not null, /* 路径(不包括域名)*/ Title varchar2(40) , /* 标题
*/
TitleCount number(5) not null, /* 标题处理次数
*/
CreateOperator number(10) null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate, /* 修改日期*/ Priority number(5) default 0, /* 搜索优先级,0最低*/ SubClassId2 number(10), /* 白地址分类,2级*/
StpHostName varchar2(40) null /* 搜索种子域名*/ )
索引:
对SubClassId2 + HostName唯一索引
对SubClassId + HostName索引
对DealFlag + DealResult索引
对Priority索引
1.1.7.搜索引擎地址信息表
该表存放一些知名的站点地址,如常用的搜索引擎(goole、、baidu、sina、sohu等),该表中的地址记录可作为关键字搜索的标准地址。
create table ics_white
(
HostName varchar2(80) not null, /* 域名*/ UrlPath varchar2(80) not null, /* 路径*/
CreateOperator number(10), /* 开户操作员号*/ CreateTime date /* 创建日期*/ )
索引:
对HostName + UrlPath唯一索引
1.1.8.确认地址信息表
◆操作员通过地址管理工具从原始地址数据表ics_original对搜索得到的地址进行确
认,确认后的地址记录存入该表。
◆该表数据有增加或删除操作时,需要在表url_operate中插入一条记录,用于地址同步
程序讲数据更新记录同步给节点策略服务器。
create table url_templet
(
SubClassId number(10) not null, /* 地址三级分类,url_class定义*/ HostName varchar2(80) not null, /* 域名*/ UrlPath varchar2(80) not null, /* URL路径*/ Protocol varchar2(40) not null, /* 协议类型如: http , ftp */ Validflag number(5) not null, /* 有效标志*/
/*
0-有效:确认后的有效地址,未核查
1-已核查(checkflag=1,2,9)
2-已删除(checkflag=2)
3-返回确认(checkflag=3);
*/
Remark varchar2(40) null, /* 备注*/ CreateOperator number(10) not null, /* 添加记录操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 修改记录操作员号*/ ModifyTime date default sysdate, /* 修改日期*/ Title varchar2(40), /* 标题
*/
CheckFlag number(5) default 0, /* 核查:0-未核查 >0表已核查*/
/* 0-未核查 1-修改分类 2-删除 3-重新确认 9-核查无误*/ CheckOperator number(10) default 0, /* 核查操作员编号*/ CheckTime date null /* 核查日期*/ )
索引:
对SubClassId + HostName + UrlPath + Protocol唯一索引
对HostName 索引
1.1.9.过滤地址表
create table url_filtered
(
SubClassId number(10) not null, /* 地址二级分类,url_class定义*/ HostName varchar2(80) not null, /* 域名*/ UrlPath varchar2(80) null, /* URL路径*/ Validflag number(5) default 0,
/* 0-未核查1-修改分类2-删除3-重新确认9-核查无误*/
CreateTime date default sysdate, /* 创建日期*/ ModifyOperator number(10) default 0, /* 修改记录操作员号*/ ModifyTime date default sysdate /* 修改日期*/ )
索引:
对SubClassId + HostName 唯一索引
1.1.10.数据字典表
存放系统使用的数据字典信息,该表数据数据一般较固定,一般在系统初始化时一次性生成所需数据,暂不在界面上提供数据更新功能。
create table data_dict_info
(
DictType number(10) not null, /* 数据字典的类型*/ /* 1= url关键字的分类方式
2=服务(端口和ip)的类型(1级)
3= URL地址的分类(1级)
5= 服务(端口和ip)的类型(2级)
9= 需要同步给FS的文件分类
100=省份代码
101=城市代码
102=开户地区代码
105=客户行业(从事行业)
106=客户职业(职业类别)
107=国家代码
108=知名服务提供商列表
201=小孩的爱好
202=用户的爱好
400=广告分类
*/
SubClassId number(10) not null, /* 代码*/ DataName varchar2(40) not null, /* 数据的名称*/ ClassId number(10) default 0, /* 相关联的父级代码*/ Param varchar2(20) null, /* 对于开户地区,表示地区代码*/ Remark varchar2(40) null, /* 备注*/ DataFlag number(10) not null, /* 标志:0-全网数据 1-本地数据*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate /* 修改日期*/ );
索引:
对DictType + SubClassId唯一索引
1.1.11.地址分类表
存放URL地址的二级和三级分类,地址的一级分类存放在数据字典表。
◆一个二级地址的分类可归为白或黑,也可既属于黑又属于白(ClassFlag=2)。
◆根据不同的分类标准和搜索算法,一个具体的URL地址也可能同属于多个地址分类。
◆对于一个特定的用户来说,可自由指定一种地址分类对该用户本身是黑(阻断)还是白
(放行)方式。
create table url_class
(
SubClassId number(10) not null, /* 地址二级或三级子类id */ DictType number(10) not null, /* 2:二级分类 3:三级分类*/ GroupId number(10) not null , /* 父类分级编号*/ ClassName varchar2(40) not null, /* 子类名称*/ Remark varchar2(512) not null, /* 说明*/ ClassFlag number(5) not null, /* 标志:0-黑 1-白 2-ALL*/
CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date /* 修改日期*/ );
索引:
对SubClassId 唯一索引
对DictType + GroupId 索引
1.1.1
2.安全级别定义表
create table security_class
(
SecurityClassId number(10) not null , /* 安全级别*/ SecurityFlag number(5) not null , /* 服务标志:0-绿色上网业务1-互联特区业务*/
ClassName varchar2(80) not null, /* 级别名称*/ Remark varchar2(512) not null, /* 安全级别描述*/ DataFlag number(5) not null, /* 标志:0-全网数据 1-本地数据*/ Status number(5) not null , /* 标志 0-正常 1-无效*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate /* 修改日期*/ );
索引:
对SecurityClassId唯一索引
1.1.13.安全级别设置表
◆对安全级别的具体控制容进行设置,如包含哪些黑/白、关键字、端口、时间控制等安
全控制方式。
◆安全级别ID在安全级别定义表(security_class),安全级别对应的安全控制编号
(SubClassId)对应各种类型的安全策略表(url_templet、keyword_tmeplet、serviceport_templet)中。
◆安全模板数据通过管理工具进行维护,模板数据的更新和删除操作需要同步更新记录操
作表security_operate。
◆该表数据需同步给节点策略服务器。
create table security_templet
(
SecurityClassId number(10) not null , /* 安全级别*/ SecurityType number(10) not null , /* 安全级别类型*/
/* 1= 关键字分类
2= 黑
3= 白
4= 服务(IP)(黑)
5= 服务(PORT)(黑)
6= 服务(IP)(白)
7= 服务(PORT)(白)
8= 时间模板
*/
SubClassList varchar2(512) not null,
/* 子类ID串,逗号分隔,前后均需逗号*/ DataFlag number(10) not null, /* 标志:0-全网数据 1-本地数据*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate /* 修改日期*/ );
索引:
对SecurityClassId + SecurityType唯一索引
1.1.14.过滤关键字模板设置表
◆过滤关键字模板的定义对应表data_dict_info.dictType=1的数据。
◆该表数据由管理工具维护,设置每个模板包含的具体关键字,该表数据的增加和删除操
作需要同步更新keyword_operate操作记录表。
◆该表数据需同步给策略服务器。
create table keyword_templet
(
SubClassId number(10) not null, /* 关键字的分类id,dictType=1 */ KeyName varchar2(40) not null, /* 关键字,不允许有空格*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate /* 修改日期*/ );
索引:
对SubClassId + KeyName唯一索引
1.1.15.端口过滤模板设置表
配置基于IP+端口方式的控制策略。
◆端口过滤模板的定义对应表data_dict_info.dictType=5/10的数据。
◆该表数据由管理工具维护,设置每个模板包含的具体端口,该表数据的增加和删除操作
需要同步更新serviceport_operate操作记录表。
该表数据需同步给策略服务器。
create table serviceport_templet
(
SubClassId number(10) not null , /* 端口分类id,dictType=5/10 */ Port number(10) not null, /* 端口*/ PortName varchar2(40) not null, /* 端口名称*/ IP number(10) not null, /* IP地址*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate /* 修改日期*/ );
索引:
对SubClassId + Port + IP唯一索引
1.1.16.IP过滤模板设置表
配置基于IP地址控制的安全策略(知名服务过滤)。
create table serviceIp_templet
(
SubClassId number(10) not null , /* 服务子类型 DictType = 5 */
IP number(10) not null, /* ip地址 , 不能为0 */
ClassId number(10) not null, /* 厂商ID,字典表DictType=108 */
Remark varchar2(20) default ‘’, /* 描述*/ DataFlag number(10) not null, /* 标志:0-全网数据 1-本地数据*/ Reserved1 number(10) default 0, /* 保留1 */ Reserved2 varchar2(20) null, /* 保留1 */ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate /* 修改日期*/ );
索引:
对subClassId + ip 唯一索引
1.1.17.广告过滤库表
广告过滤作为一个全局的免费服务,用户可选择开通,也可关闭此服务。
对于开通了广告过滤业务的用户,以下站点对应的广告将被替换或过滤掉。
该表数据由全网策略管理中心进行维护,数据的更新同步给策略服务器。
create table ad_class
(
SubClassId number(5) not null, /* 广告分类,dicttype=400 */ UrlHost varchar2(40) not null, /* 过滤广告域名*/
UrlPath varchar2(80) default‘/’, /* 过滤广告页面路径*/ Remark varchar2(80) null, /* 广告页面的说明*/ ValidFlag number(5) not null, /* 标志:0-停止 1-启用*/ Reserved1 varchar2(24) null, /* 保留1 */ Reserved2 varchar2(24) null, /* 保留2 */ CreateOperator number(10) not null, /* 添加记录操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 修改记录操作员号*/ ModifyTime date default sysdate /* 修改日期*/ )
索引:
对UrlHost + UrlPaht唯一索引
1.1.18.广告地址库操作记录表
create table adclass_operate
(
ID numeric(10) not null, /* 流水号,seq_operateid.nextval*/ OperateType number(5) not null , /* 操作类型 1-增加2-删除*/ SubClassId number(10) not null , /* 广告地址id */ UrlHost varchar2(40) not null, /* 过滤广告域名*/
UrlPath varchar2(80) default‘/’, /* 过滤广告页面路径*/ ValidFlag number(5) default 0, /* 有效标志 0-有效 1-无效 */ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null /* 创建日期*/ )
索引:
对ID唯一索引
1.1.19.域名信息表
该表存放WEB站点的域名信息,地址手工或自动确认后往该表写入域名记录。
create table hostname_info
(
HostId numeric(10) not null, /* 域名编号, seq_hostid.nextval */ HostName varchar2(80) not null, /* url host 域名*/ DealCount number(10) not null, /* 处理次数*/ ValidFlag number(5) not null, /* 标志:0-正常 1-无效*/ Remark varchar2(40) null, /* 备注*/ Reserved1 varchar2(20) not null, /* 保留1 */ Reserved2 number(10) not null, /* 保留2 */ CreateTime date not null, /* 创建时间*/ ModifyTime date not null /* 上次处理时间*/ );
索引:
对HostId唯一索引
对HostName唯一索引
对DealCount索引
1.1.20.域名-IP对应关系表
◆存放域名与IP地址的对应关系。
◆IP地址由域名管理程序自动进行维护。
◆该表数据的增加和删除需要同步更新对应的操作记录表hostinfo_operate,然后将数
据同步给节点策略服务器。
create table ip_info
(
HostId number(10) not null, /* 域名编号*/ IP number(10) not null , /* IP地址*/ CreateTime date not null /* 创建日期*/ );
索引:
对HostId + IP唯一索引
1.1.21.上网时间控制模板设置表
存放系统初始化时生成的一些时间控制模板,一个模板对应一套对上网时间进行限制的缺省设置。
用户在自服务门户中进行上网时间设置时,可直接选择一个模板,以避免进行繁琐的时间设置。
create table timecontrol_templet
(
TimeModuleId number(10) not null, /* 模板编号*/ ModuleName varchar2(100) not null, /* 模板名称*/ Remark varchar2(255) not null, /* 模板说明*/ DataFlag number(10) not null, /* 标志:0-全网数据 1-本地数据*/ MaxOnlineTime1 number(10) default 0, /* 星期一上网最大时长(秒),0不限*/ MaxOnlineTime2 number(10) default 0, /* 星期二允许的上网最大时长(秒) */ MaxOnlineTime3 number(10) default 0, /* 星期三允许的上网最大时长(秒) */ MaxOnlineTime4 number(10) default 0, /* 星期四允许的上网最大时长(秒) */ MaxOnlineTime5 number(10) default 0, /* 星期五允许的上网最大时长(秒) */ MaxOnlineTime6 number(10) default 0, /* 星期六允许的上网最大时长(秒) */ MaxOnlineTime7 number(10) default 0, /* 星期日允许的上网最大时长(秒) */ ValidTime1 number(10) default 0, /* 星期一允许上网时间,以位表示 */ ValidTime2 number(10) default 0, /* 星期二允许上网时间,以位表示 */ ValidTime3 number(10) default 0, /* 星期三允许上网时间,以位表示 */ ValidTime4 number(10) default 0, /* 星期四允许上网时间,以位表示 */ ValidTime5 number(10) default 0, /* 星期五允许上网时间,以位表示 */ ValidTime6 number(10) default 0, /* 星期六允许上网时间,以位表示 */ ValidTime7 number(10) default 0, /* 星期日允许上网时间,以位表示 */ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date /* 修改日期*/ );
索引:
对TimeModuleId唯一索引
对ModuleName唯一索引
1.1.2
2.地址操作记录表
在管理工具中或搜索引擎进行自动确认时进行地址数据增加或删除后,同步在该表中插入一条记录,地址同步程序根据该表的数据将地址更改信息通知策略服务器。
create table urlinfo_operate
(
ID numeric(10) not null, /* 流水号,seq_operateid.nextval*/ OperateType number(5) not null , /* 操作类型 1-增加2-删除*/ SubClassId number(10) not null , /* 地址分类(子类)id */ HostName varchar2(80) not null, /* url host 域名*/ UrlPath varchar2(80) null, /* url path 最长为80个字节*/ ValidFlag number(5) default 0, /* 有效标志 0-有效 1-无效*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate /* 修改日期*/ );
索引:
对ID唯一索引
1.1.23.域名-IP对应关系操作记录表
域名-IP对应关系数据增加或删除后,在该表插入一条记录,地址同步程序根据该表的数据将域名-IP对应关系数据的更新通知策略服务器。
create table hostinfo_operate
(
ID numeric(10) not null, /* 流水号,seq_operateid.nextval*/ OperateType number(5) not null , /* 操作类型 1-增加 2-删除*/ HostName varchar2(80) not null, /* url host 域名*/ IP number(10) not null, /* ip地址*/ ValidFlag number(10) default 0, /* 有效标志0-有效 1-无效*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate /* 修改日期*/ );
索引:
对ID唯一索引
1.1.24.过滤关键字操作纪录表
create table keyword_operate
(
ID numeric(10) not null, /* 流水号,seq_operateid.nextval*/ OperateType number(5) not null , /* 操作类型1-增加2-删除*/
SubClassId number(10) not null , /* 过滤关键字分类ID */ KeyName varchar2(40) not null, /* 关键字,不允许有空格*/ ValidFlag number(10) default 0, /* 有效标志 0-有效 1-无效*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate /* 修改日期*/ );
索引:
对ID唯一索引
1.1.25.过滤端口操作纪录表
create table serviceport_operate
(
ID numeric(10) not null, /* 流水号,seq_operateid.nextval*/ OperateType number(5) not null , /* 操作类型 1-增加 2-删除*/ SubClassId number(10) not null , /* 过滤端口分类id */ Port number(10) not null, /* 端口*/ PortName varchar2(40) not null, /* 端口名称*/ IP number(10) not null, /* IP地址*/ ValidFlag number(10) default 0, /* 有效标志 0-有效 1-无效*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate /* 修改日期*/ );
索引:
对ID唯一索引
1.1.26.过滤IP操作记录表
create table serviceIp_ operate
(
ID numeric(10) not null, /* 流水号,seq_operateid.nextval*/
OperateType number(5) not null , /* 操作类型 1-增加 2-删除*/ SubClassId number(10) not null , /* 服务子类型DictType = 5 */
IP number(10) not null, /* ip地址 , 不能为0 */
Remark varchar2(40) not null, /* 说明*/
ValidFlag number(10) default 0, /* 有效标志 0-有效 1-无效*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate /* 修改日期*/ );
索引:
对ID 唯一索引
1.1.27.安全级别操作纪录表
create table security_operate
(
ID numeric(10) not null, /* 流水号,seq_operateid.nextval*/ OperateType number(5) not null , /* 操作类型1-增加2-删除*/ SecurityClassId number(10) not null , /* 安全级别*/ SecurityType number(10) not null , /* 安全级别类型*/ SubClassList varchar2(512) not null,
/* 子类ID串,以逗号分隔,前后均需逗号*/ ValidFlag number(10) default 0, /* 有效标志 0-有效 1-无效*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date default sysdate /* 修改日期*/ );
索引:
对ID唯一索引
1.1.28.策略服务器配置表
create table policyserver_config
(
SystemId number(10) not null, /* 策略服务器编号*/ Province number(10) not null, /* 归属省分代码*/ AreaCode number(10) not null, /* 归属地区代码*/ IP varchar2(20) not null, /* IP地址*/ FtpUser varchar2(32) null, /* FTP */
FtpPasswd varchar2(32) null, /* FTP密码*/
FilePath varchar2(100) not null, /* 策略文件存放路径*/ Status number(10) not null, /* 状态 0-正常 1-无效*/ Remark varchar2(40) null, /* 备注*/
CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date /* 修改日期*/ );
索引:
对SystemId唯一索引
1.1.29.序列器
create sequence seq_userid; /* 操作员/管理员ID */ create sequence seq_hostid; /* 域名编号*/ create sequence seq_operateid; /* 操作纪录表流水号*/
1.2.策略服务器数据库表结构
1.2.1.系统管理员信息表
存放本系统的部管理员信息,此表中的用户名、密码用来校验管理员的身份。
增加一个操作员时,需要指定该操作员的角色(一个操作员可有多个角色),角色决定了操作员的权限。
create table system_admin
(
userId number(10) not null, /* 管理员编号,seq_operatorid */ userName varchar2(30) not null, /* 用户登录名*/ userIp varchar2(20) null, /* 操作员允许登录的IP */ fullName varchar2(40) null, /* 用户*/
userDesc varchar2(200) null, /* 用户描述*/ userRight number(10) not null, /* 用户权限*/ password varchar2(64) not null, /* 加密后的密码*/ userStatus number(10) not null, /* 状态 0-正常 1-暂停 2-注销*/ email varchar2(80) not null, /* EMAIL地址*/ contactNum varchar2(20) not null, /* 联系*/
department varchar2(40) not null, /* 部门*/ areacode varchar2(16) not null, /* 归属地区,9999表示不限地区*/ CreateOperator number(10) not null, /* 确认操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) null, /* 修改操作员号*/ ModifyTime date null, /* 修改日期*/
userType number(5) default 0, /* 用户类型
1:管理员(允许进入管理门户)
2:营业员3:客服人员*/ userFlag number(5) default 0 /* 用户身份:1-傲天 2-电信 */ );
索引:
对userId唯一索引
对userName唯一索引
1.2.2.操作员-角色定义表
定义操作员所属的角色,一个操作员可对应多个角色,角色决定了操作员的权限。
create table OperatorRole
(
UserId number(10) not null, /* 管理员编号*/
RoleID number(10) not null, /* 角色ID */
CreateDate date not null /* 创建时间*/
)
索引:
对userId + RoleID唯一索引
1.2.3.角色定义表
定义角色名称,角色由系统管理员在系统管理门户进行增、删、改等操作。
create table Role
(
RoleID number(10) not null, /* 角色编号,seq_roleid */ RoleName varchar2(32) not null, /* 角色名称*/ RoleDescription varchar2(64) not null, /* 角色描述*/ CreateDate date not null, /* 组创建时间*/ RoleType number(5) default 0 /* 电信管理员是否可见:0=N 1=Y */ )
索引:
对 RoleID唯一索引
对 RoleName唯一索引
1.2.4.角色-权限定义表
定义角色与权限的对应关系,一个角色对应多个权限,一个权限也可属于多个角色。
create table RoleRight
(
RoleID number(10) not null, /* 角色ID */ RightID number(10) not null, /* 权限ID */ CreateDate date not null /* 创建时间*/ )
索引:
对 RoleID + RightID唯一索引
1.2.5.权限定义表
定义系统的最小操作单位(权限),权限数据由系统初始化是生成,不需要通过系统管理工具进行维护。
create table RightInfo
(
RightID number(10) not null, /* 权限标识*/ RightName varchar2(32) not null, /* 权限名称*/ RightType number(10) not null /* 权限分类*/ )
索引:
对RightID唯一索引
1.2.6.权限分类定义表
定义权限的分类关系,如角色的增、删、改、查询属于“角色维护”这个权限组,权限分类数据由系统初始化时生成。
create table RightTypeInfo
(
RightType number(10) not null, /*权限分类*/ RightTypeName varchar2(32) not null /* 权限类别名称*/ )
索引:
对RightType唯一索引
1.2.7.管理员操作日志表
在系统管理门户和营业客服门户中,对涉及到数据库记录增、删、改的操作需记录操作日志,操作日志记录在operate_log表中,主要记录OperateCode、OperatorId、DealInfo 等信息,OperateCode为该操作对应的权限代码(在RightInfo表定义),DealInfo记录一段文字描述信息,"按字段名=字段值"规则记录,如增加或修改操作员基本资料,可记录:UserId=1000|UserName=name123|Email=...,对OperateCode已描述比较清楚的操作,如修改密码,此时DealInfo可填空,DealInfo只记录最关键的几个字段的值且最多不超过10个字段。
如操作对象是用户,如修改用户密码、修改用户资料等,则在UserId字段填写被操作的用户编号。
所有的查询操作不记录日志,用户门户的操作不记录日志。
create table operate_log
(
LogID number(10) not null, /* 流水号,seq_operatelogid */ OperateCode number(5) not null, /* 权限代码,Rightinfo.RightID */ OperatorId number(10) not null, /* 执行操作的操作员编号*/ UserId varchar2(13) null, /* 被操作的用户编号*/ DealInfo varchar2(1024) null, /* 日志描述*/ CreateTime date not null /* 日志记录时间*/ )
索引:
对LogID唯一索引
对OperatorId索引
1.2.8.FTP参数配置表
该表配置FTP参数,用于上传或下载文件,如策略文件的下载/上传,用户资料文件下载等。
create table ics_dmconfig
(
ftpSeqNo number(10) not null, /* FTP参数序号*/ fileType number(10) not null, /* 需要下载的文件类型*/ ftpFlag number(10) not null , /* FTP类型 0-GET 1-PUT */ hostIp varchar2(20) not null, /* 原始文件所在主机IP */ loginUser varchar2(20) not null, /* 登录的用户名*/
loginPass varchar2(20) not null, /* 登录的密码*/ remoteDir varchar2(255) not null, /* 远程文件所在目录*/ localDir varchar2(255) not null, /* 本地文件所在目录*/ fileFormat varchar2(64) not null, /* 文件名格式*/ beginLine number(10) default 0, /* 开始行*/ headFlag number(5) default 0, /* 是否有头记录 0-no 1-yes */ tailFlag number(5) default 0, /* 是否有尾记录 0-no 1-yes */ checkRecord number(5) default 0, /* 是否要检查记录数 0-no 1-yes */ checkSeqno number(5) default 0, /* 是否要检查序列号 0-no 1-yes */ deleteFlag number(5) default 1, /* 是否删除远程文件 0-no 1-yes */ reserved1 varchar2(20) null, /* 保留1 */ reserved2 number(10) default 0, /* 保留2 */ createTime date not null, /* 记录的创建时间*/ modifyTime date not null /* 记录的修改时间*/ );
索引:
对ftpSeqNo唯一索引
1.2.9.下载文件表
记录通过FTP方式进行传输的文件上传或下载情况。
create table ics_filestate
(
fileNo number(10) not null, /* 文件序号,seq_fileid */ fileName varchar2(200) not null, /* 远程文件名*/ localFileName varchar2(200) not null, /* 本地文件名*/ fileType number(10) not null, /* 文件类型*/ hostIp varchar2(20) not null, /* 原始文件所在主机IP */ status number(10) not null, /* 文件的下载状态*/ retryTime number(10) not null, /* 文件重试次数*/ ftpSeqNo number(10) not null, /* FTP参数序号*/ reserved1 varchar2(20) null, /* 保留1 */ reserved2 int null, /* 保留2 */ createTime date not null, /* 产生日期*/ modifyTime date null, /* 修改日期*/ baseFlag number(5) /* 1-基准文件 0-非基准文件 */ );
索引:
对fileNo唯一索引
对fileName + fileType + hostIp唯一索引
1.2.10.数据字典表
存放系统使用的数据字典信息,该表数据数据一般较固定,一般在系统初始化时一次性生成所需数据,暂不在界面上提供数据更新功能。
create table data_dict_info
(
DictType number(10) not null, /* 数据字典的类型*/
/* 1= url关键字的分类方式
2=服务(端口和ip)的类型(1级)
3= URL地址的分类(1级)
5= 服务(端口和ip)的类型(2级)
9= 需要同步给FS的文件分类
100=省份代码
101=城市代码
102=开户地区代码
103=运营商代码
105=客户行业(从事行业)
106=客户职业(职业类别)
107=国家代码
108=知名服务提供商列表
201=小孩的爱好
202=用户的爱好
203=服务id(subClassId 为serviceId,dataName 为
serviceName)
204=结算比率
subClassId为跟中国电信结算的比率(百分比)
classId 为结算模式 1:收 2:付
本类数据只有一条,各地的数据可能都不一样,在安装策略服务
器时需要初始化此数据,如果该数据不存在,采取默认值:结算比率
=80% ,结算模式=1(收)。
301= 无效用户在用户信息表中的生存期
subClassId 为生存期,单位为天,只有一条数据
400= 广告分类
500= 管理门户运营商子菜单
dictType = 2,5 时,
param = 'IP' 表示该条记录为ip控制
param = 'PORT' 表示该条记录为port 控制
subClassId = 9998 ,param = 'PORT' 表示端口分段从1 - 1024
subClassId = 9999 ,param = 'PORT' 表示端口分段从1025 - 65535
*/
SubClassId number(10) not null, /* 代码*/ DataName varchar2(40) not null, /* 数据的名称*/ ClassId number(10) default 0, /* 相关联的父级代码*/ Param varchar2(20) null, /* 对于开户地区,表示地区代码*/ Remark varchar2(256) null, /* 备注*/ DataFlag number(10) not null, /* 标志:0-全网数据 1-本地数据*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date /* 修改日期*/ );
索引:
对DictType + SubClassId + ClassId 唯一索引
1.2.11.地址分类表
存放黑白地址二级和三级分类。
create table url_class
(
SubClassId number(10) not null, /* 地址二/三级子类编号*/ DictType number(10) not null, /* 2:二级分类 3:三级分类*/ GroupId number(10) not null , /* 父类分级编号*/ ClassName varchar2(40) not null, /* 子类名称*/ Remark varchar2(512) not null, /* 说明*/ ClassFlag number(10) not null, /* 标志:0-黑 1-白 2-ALL*/
CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date /* 修改日期*/ );
索引:
对SubClassId唯一索引
1.2.12.地址信息表
该表数据由全网策略管理中心同步到节点策略服务器而产生,本表中的HostName字段用MD5算法加密存放。
◆地址信息在全网策略管理端统一维护,在节点策略服务器端不能修改地址信息,节点管
理员可验证一个地址在节点端是否存在,但不能查询出节点服务端有哪些地址信息。
create table url_templet
(
SubClassId number(10) not null, /* 地址二级分类,url_class定义*/ HostName varchar2(80) not null, /* 域名*/ UrlPath varchar2(80) not null, /* URL路径*/ Protocol varchar2(40) not null, /* 协议类型如: http , ftp */ Validflag number(10) not null, /* 有效标志 0:有效 1:无效*/ Remark varchar2(40) null, /* 备注*/ CreateOperator number(10) not null, /* 开户操作员号*/ CreateTime date not null, /* 创建日期*/ ModifyOperator number(10) default 0, /* 开户操作员号*/ ModifyTime date /* 修改日期*/ );
索引:
对SubClassId + HostName + UrlPath + Protocol唯一索引
1.2.13.域名信息表
◆该表存放ICS用户自定义黑或白地址时产生的域名信息,不存放全网策略管理中心同步
过来的域名信息。
create table hostname_info
(
HostId number(10) not null, /* 域名编号,seq_hostid.nextval */ HostName varchar2(80) not null, /* url host 域名*/ DealCount number(10) not null, /* 处理次数*/ ValidFlag number(10) not null, /* 标志:0-正常 1-无效*/ Remark varchar2(40) null, /* 备注*/ Reserved1 varchar2(20) null, /* 保留1 */ Reserved2 number(10) null, /* 保留2 */ CreateTime date not null, /* 创建时间*/ ModifyTime date null /* 上次处理时间*/ );
索引:
对HostId唯一索引
对HostName唯一索引。