应安全要求,在数据库中配置ip黑名单限制特定的ip进行访问。
为了保护网络免受此类攻击或不良行为的影响,IP黑名单是一个必要的手段。IP黑名单是一种黑名单列表,其中包含不允许访问某个网络或服务器的IP地址。
CREATE OR REPLACE NONEDITIONABLE TRIGGER SYS.CHECK_BLACK_LIST
after logon on database ----事后触发器
declare
client_ip varchar2(20);
v_count varchar2(100);
begin
dbms_application_info.set_client_info('logon ' || sys_context('userenv','ip_address')); ----获取客户端信息
select sys_context('userenv','ip_address') into client_ip from dual;
----判断ip是否在黑名单上
select count(1) into v_count from ON_NOLOGON_TABLE where ip_address = client_ip;
if v_count>0 then
raise_application_error(-20000,'该ip已被列入黑名单');
end if;
end;
/
ALTER TRIGGER SYS.CHECK_BLACK_LIST ENABLE; ---启动触发器
CREATE TABLE SYS.ON_NOLOGON_TABLE
( "COMPANY" VARCHAR2(20),
"IP_ADDRESS" VARCHAR2(30),
"APP_NAME" VARCHAR2(300)
) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT);
insert into SYS.ON_NOLOGON_TABLE values ('xxx','xxx.xxx.xxx.xxx','');

本文作者:胡祥开(上海新炬中北团队)
本文来源:“IT那活儿”公众号

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




