KingbaseES 扩展插件src_restrict 介绍
插件简介
src_restrict是KingbaseES的一个扩展插件,主要用于支持来源限制功能,该功能通过黑白名单来实现。插件src_restrict默认已经加载。
查看插件是否加载
show shared_preload_libraries;
配置插件src_restrict
插件默认版本1.0
test=> select * from sys_available_extensions where name ='src_restrict';
name | default_version | installed_version | comment
--------------+-----------------+-------------------+---------------------
src_restrict | 1.0 | 1.0 | src restrict plugin
(1 row)
src_restrict.enable:是否允许使用黑白名单功能,取值范围为true或者false ,缺省值为true。
TEST=# \c - sso
You are now connected to database "TEST" as user "sso".
TEST=> show src_restrict.enable
TEST-> ;
src_restrict.enable
---------------------
on
(1 row)
插件src_restrict使用方法
系统函数
添加来源限制的规则,可通过参数选择配置白名单或黑名单。
src_restrict.add_rules(
filter_type int,
rule_user text,
rule_ip text,
outrule_ip text)
参数说明
filter_type
限制规则的类型,0为白名单,1为黑名单。
rule_user
限制的用户名,多个用户时需使用逗号分隔,null表示限制所有用户。当用户名中存在特殊字符时,请将该用户名使用双引号括起来,避免用户名识别失败。
用户名参数最大长度255。
rule_ip
限制的IP,多个IP之间需使用逗号分隔,null表示限制所有IP。
允许使用*号进行IP网段匹配,但网段后不允许出现具体IP,例如192.168.*.123。
outrule_ip
不受限制的IP,与rule_ip相同。
不受限制仅表示该参数与rule_ip的类型相反,例如filter_type为0,则rule_ip为白名单,outrule_ip为黑名单,不影响黑白名单优先级。
系统函数
删除来源限制规则。
src_restrict.remove_rules(
filter_type int,
rule_user text,
rule_ip text)
参数说明
filter_type
规则的类型,0为白名单,1为黑名单。
rule_user
规则的用户名,多个用户时需使用逗号分隔,null等于all。当用户名中存在特殊字符时,请将该用户名使用双引号括起来,避免用户名识别失败。
用户名参数最大长度255。
rule_ip
规则的IP,只允许删除一个IP,不支持删除多个规则,null等于0.0.0.0/0。
允许使用*号进行IP网段匹配,但网段后不允许出现具体IP,例如192.168.*.123。
查看规则限制视图
TEST=> select * from src_restrict.show_rules;
filter_type | rule_user | rule_ip | netmask
-------------+-----------+-----------+-----------------------------------------
allow | {all} | |
allow | {all} | 127.0.0.1 | 255.255.255.255
allow | {all} | 0.0.0.0 | 0.0.0.0
allow | {all} | ::1 | ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
allow | {all} | :: | ::
allow | {all} | |
allow | {all} | 127.0.0.1 | 255.255.255.255
allow | {all} | ::1 | ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
(8 rows)
测试示例
\c - sso
添加对用户u1,IP地址为192.168.1.2的黑名单规则
TEST=> select src_restrict.add_rules(1, 'u1', '192.168.56.3', '');
add_rules
-----------
t
(1 row)
查看当前黑白名单,多了一条filter_type为reject的条目
TEST=> select * from src_restrict.show_rules;
filter_type | rule_user | rule_ip | netmask
-------------+-----------+--------------+-----------------------------------------
allow | {all} | |
allow | {all} | 127.0.0.1 | 255.255.255.255
allow | {all} | 0.0.0.0 | 0.0.0.0
allow | {all} | ::1 | ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
allow | {all} | :: | ::
allow | {all} | |
allow | {all} | 127.0.0.1 | 255.255.255.255
allow | {all} | ::1 | ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
reject | {u1} | 192.168.56.3 | 255.255.255.255
(9 rows)
需要sso用户reload后黑名单生效
TEST=> select sys_reload_conf();
sys_reload_conf
-----------------
t
(1 row)
退出当前会后会再次登录已经被禁止
[kingbase7@localhost ~]$ ksql -h 192.168.56.3 -U u1 test
ksql: error: could not connect to server: FATAL: no sys_hba.conf entry for host "192.168.56.3", user "u1", database "test", SSL off
删除刚添加的规则
select src_restrict.remove_rules(1, 'u1', '192.168.56.3');
需要sso用户reload后生效
TEST=> select sys_reload_conf();
sys_reload_conf
-----------------
t
(1 row)
删除规则后可以用u1用户登录数据库
[kingbase7@localhost data]$ ksql -h 192.168.56.3 -U u1 test
Password for user u1:
ksql (V8.0)
Type "help" for help.
卸载插件
在kingbase.conf文件中shared_preload_libraries中将对应插件删除后重启数据库。
src_restrict扩展插件通常随着KingbaseES安装包一并升级。通常情况下用户无须单独升级插件。
KingbaseES 扩展插件src_restrict 介绍的更多相关文章
- vs2010(vs2012)好用的扩展插件介绍
一直以来只使用番茄vs助手(https://www.wholetomato.com/downloads/default.asp)辅助写代码,也都忘了是谁介绍的,不过确实好用. 相比原始的vs,它提供了 ...
- vscode简单使用介绍及个人常用扩展插件
vscode全称Visual Studio Code 是微软开发一款IDE,官方地址 vscode 作为一款前端编辑器功能很强大,灵活,可以根据个人喜好选择扩展插件,而且还支持多种开发语言, 关于v ...
- Sharepoint 2013列表视图和字段权限扩展插件(免费下载)!
记得2014年春节期间,有博客园的网友通过QQ向我咨询Sharepoint 2013列表视图和字段权限扩展,因为之前他看到我博客介绍Sharepoint 2010列表视图和字段的权限控制扩展使用,问有 ...
- ExtJS4.2学习(13)基于表格的扩展插件---rowEditing
鸣谢:http://www.shuyangyang.com.cn/jishuliangongfang/qianduanjishu/2013-11-24/182.html --------------- ...
- 常用网站开发类Firefox扩展插件 (转)
作为一个 Web 开发人员,你几乎没有理由不喜欢Firefox,因为在Firefox下有很多专门针对开发的扩展插件,非常好用,这里就介绍一些常用的针对网站开发的FireFox扩展,供Web开发人员参考 ...
- 100个精选zencart扩展插件
100个精选zencart扩展插件 特别推荐 1. 数据库备份 2. 产品横向布局. 3. 邮件订阅Newsletter Subscribe. 4. google 翻译google_translate ...
- 那些离不开的 Chrome 扩展插件
虽然Chrome浏览器是个吃内存的怪兽,但是,它却因为启动速度.调试功能等成为了程序猿的必备浏览器!今天有时间,整理一下自己最常用的一些Chrome扩展吧: 常用网页浏览非开发类扩展: Tamperm ...
- jupyter notebook设置主题背景,字体和扩展插件
windows上安装Anaconda (IPython notebook) Anaconda是一个包与环境的管理器,一个Python发行版,以及一个超过1000多个开源包的集合.它是免费和易于安装的, ...
- PHP扩展插件 imagick 、PDO_MYSQL 安装
环境准备 echo $LC_ALL echo "export LC_ALL=C" >> /etc/profile source /etc/profile yum ins ...
- 五十七.分布式ELK平台、ES安装 、 扩展插件 、Kibana安装
1. ES集群安装 准备1台虚拟机 部署elasticsearch第一个节点 访问9200端口查看是否安装成功 1ELK是日志分析平台,不是一款软件,而是一整套解决方案,是三个软件产品的首字母缩写 ...
随机推荐
- Ubuntu20.04安装记录
在Ubuntu下将iso文件刻录到U盘, 可以使用系统自带的Startup Disk Creator. 分区方式 使用整个硬盘, 一个512G SSD, 使用默认的分区方式, 会创建一个512M的EF ...
- Annotation-specified bean name conflicts with existing
问题说明 Annotation-specified bean name conflicts with existing,non-compatible bean definition of same n ...
- 用Taro写一个微信小程序——渲染 HTML
在taro小程序里面渲染一段html代码,具体可查看文档https://docs.taro.zone/docs/html 一.渲染 HTML 文档推荐使用 dangerouslySetInnerHTM ...
- C/C++ 的 指针/引用 传参
#include <stdio.h> //指针传值 void addOne(int *a) { printf("%8p\n",a); *a = *a+1; } //引用 ...
- Java package(包) +import 关键字(2)
1 package com.bytezero.exer; 2 3 import java.lang.reflect.Field; 4 5 //import java.util.ArrayList; 6 ...
- 继续总结Python中那些简单好用的用法
上一篇文章Python中那些简单又好用的特性和用法发出后,群里的小伙伴又给补充了几个好用的用法,结合生产实用经验汇总整理如下,各位看官如有需要请自取 反射,反射是一种机制,可以在运行时获取.检查和修改 ...
- nexus 莫名错误 两个解决的地方
unknown org.sonatype.nexus.reposibory.httpclient.internal.httpclientfaceImpl 也没太解决,先记录下来吧
- favorite 单词学习 主要是发音 fa - vor - it 注意 ri不连读 是自然带出来的r的尾音
favorite 单词学习 主要注意发音 [ ˈfeɪ v(ə)r ɪt ] 主要是发音 fa - vor - it 注意 ri不连读 是自然带出来的r的尾音 favor : 来自拉丁语favere, ...
- linux文件管理(补充)
linux文件管理 vim编辑器 vi概述 vi 编辑器 他是linux和unix系统上最基本的文本编辑器,类似于windows系统下的记事本编辑器 vim编辑器 vim是vi的加强版,比vi更容易使 ...
- nginx四层和七层负载的配置
四层负载和七层负载是两种不同类型的负载均衡策略,它们分别在网络的不同层次上工作.在Nginx中,这两种负载均衡策略可以通过配置nginx.conf文件来实现. 四层负载(L4 Load Balanci ...