noset
阻止非超级用户使用SET/RESET设置变量
仓库
https://gitlab.com/ongresinc/extensions/noset
https://gitlab.com/ongresinc/extensions/noset
源码
noset-v0.3.0.tar.gz
noset-v0.3.0.tar.gz
概览
| ID | 扩展名 | Bin | Lib | Load | Create | Trust | Reloc | 模式 |
|---|---|---|---|---|---|---|---|---|
| 7420 | noset | 否 | 是 | 是 | 是 | 否 | 是 | - |
| 相关扩展 | pg_command_fw pg_kpart pgextwlist block_copy_command supautils plan_filter safeupdate pg_readonly sepgsql pg_strict |
|---|
版本
| 类型 | 仓库 | 版本 | PG 大版本 | 包名 | 依赖 |
|---|---|---|---|---|---|
| EXT | PIGSTY | 0.3.0 | 1817161514 | pg_noset | - |
| RPM | PIGSTY | 0.3.0 | 1817161514 | noset_$v | - |
| DEB | PIGSTY | 0.3.0 | 1817161514 | postgresql-$v-noset | - |
构建
您可以使用 pig build 命令构建 pg_noset 扩展的 RPM / DEB 包:
BASH
安装
您可以直接安装 pg_noset 扩展包的预置二进制包,首先确保 PGDG 和 PIGSTY 仓库已经添加并启用:
BASH
使用 pig 或者是 apt/yum/dnf 安装扩展:
安装
BASH
pig
BASH
dnf
BASH
apt
BASH
预加载配置:
BASH
创建扩展:
SQL
用法
noset 是一个可加载模块,阻止特定用户使用 SET 或 RESET 命令更改会话参数。
SQL
配置
添加到 postgresql.conf:
INI
GUC 参数
| 参数 | 默认值 | 描述 |
|---|---|---|
noset.enabled | false | 为该角色启用 SET/RESET 阻止 |
noset.parameters | * | 要阻止的参数(逗号分隔,* = 全部) |
设置按用户限制
SQL
示例
SQL
查找受限用户
SQL
注意事项
- 不适用于超级用户
- 该扩展撤销了 PUBLIC 对
set_config函数的访问权限