Oracle ACL (Access Control List) 详细介绍

参考:https://blog.csdn.net/qq243348167/article/details/87876956


--查询acl信息
SELECT * FROM dba_network_acl_privileges;
SELECT * FROM dba_network_acls;

--创建acl文件     
begin
  dbms_network_acl_admin.create_acl
    (acl         => '/sys/acls/utl_http.xml', -- 命名
     description => 'some word.. desc',      -- 描述
     principal   => 'SCOTT',                   -- 要赋权限的用户
     is_grant    => true,                     -- true表示赋权,false表示取消赋权
     privilege   => 'connect');               -- 权限限制
end;

--删除acl
begin
 dbms_network_acl_admin.drop_acl(acl => '/sys/acls/utl_http.xml');
end;

--添加用户权限
begin
 dbms_network_acl_admin.add_privilege(acl        => '/sys/acls/utl_http.xml',
                                      principal  => 'SCOTT', --表示赋予权限给哪个用户
                                      is_grant   => TRUE,
                                      privilege  => 'connect',
                                      start_date => null,
                                      end_date   => null);

end;

--分配访问控制列表
begin
  dbms_network_acl_admin.assign_acl
    (acl        => '/sys/acls/utl_http.xml', -- 命名
     host       => '192.168.43.190',          -- 需要访问的服务器地址
     lower_port => 1,                       -- 端口从
     upper_port => 10000);                  -- 端口到
end;

--删除访问控制列表
begin
  dbms_network_acl_admin.unassign_acl
    (acl        => '/sys/acls/utl_http.xml', -- 命名
     host       => '180.101.49.12',          -- 需要访问的服务器地址
     lower_port => 1,                       -- 端口从
     upper_port => 10000);                  -- 端口到
end;
posted @ 2020-11-30 12:59  雨中遐想  阅读(1182)  评论(0编辑  收藏  举报