PostgreSQL简单添加只读用户的方法

1. 添加了白名单只读来避免开发同事错误的修改数据库内的数据, 但是他们总想去查询数据库的内容.

最简单的办法是修改pg_hba.conf添加只读用户.

2. 添加只读用户.

使用psql登录pg数据库

psql -U gscloud -d gscloud

效果为:

[[email protected] zhaobsh]# psql -U gscloud -d gscloud
Password for user gscloud:
psql (10.7)
Type "help" for help.

gscloud=# 

添加用户

create role gscloudreader with password ‘Test6530‘;

添加usage的权限以及只读权限给用户

赋予usage权限
grant usage on schema gscloud to gscloudreader;
赋予查询权限
grant select on all tables in schema gscloud to gscloudreader;赋予登录权限alter user gscloudreader with login;

4. 修改pg_hba.conf的用户添加任意ip地址访问

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     md5
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
#host    all             all             0.0.0.0/0              md5
host    gscloud         gscloudreader             0.0.0.0/0              md5

5. 重启服务进行验证

systemctl restart postgresql-10

6. 验证能够正常登录测试.

7. 验证无法删除和修改.

原文地址:https://www.cnblogs.com/jinanxiaolaohu/p/12128842.html

时间: 2024-10-10 01:50:45

PostgreSQL简单添加只读用户的方法的相关文章

PostgreSQL数据库创建只读用户总结

好久没有弄,有点忘了,今天有客户问这个问题,发现几个SQL还解决不了,于是总结一下: --以超级用户登录数据库,创建用户: postgres=# create user test_read_only password 'test_read_only'; CREATE ROLE --设置为只读的transaction: postgres=# alter user test_read_only set default_transaction_read_only=on; ALTER ROLE --默认

如何在Windows Server 2008R2上面批量添加AD用户及自定义OU批量添加用户

首先这里我们需要找HR要到员工的信息表,越详细越好 注:密码不能太过于简单,一定要符合密码的复杂性的要求,不然会提示报错信息 然后把修改号的表保存到C盘的根目录下面 下面添加这些信息for /f "skip=1 eol=; tokens=1-10 delims=, " %a in (c:\aduserdata.csv) do dsadd user cn=%a,cn=users,dc=abc123,dc=com -display a% -upn %[email protected] -s

MYSQL添加远程用户或允许远程访问三种方法

方法一添加远程用户admin密码为password GRANT ALL PRIVILEGES ON *.* TO [email protected] IDENTIFIED BY \'password\' WITH GRANT OPTION;GRANT ALL PRIVILEGES ON *.* TO [email protected]\"%\" IDENTIFIED BY \'password\' WITH GRANT OPTION;mysql教程添加远程用户或允许远程访问三种方法用r

gitlab批量添加用户的方法

gitlab批量添加用户的方法要在gitlab中添加新的用户,可以用管理员账户在登录gitlab后进入admin area页面,进行添加用户的操作.但是这样只能手工进行操作,一次只能添加一个用户.如果需要一次添加大量用户,不仅操作速度慢,还很容易出错.要能够?批量添加用户,一个比较好的解决方案是使用gitlab提供的api接口.gitlab API的使用可以参考的gitlab的帮助文档,gitlab提供了很多语言的api 客户端.这里只介绍最简单的http方法.所有的api请求都要进行身份验证,

简单语句实现用户添加、删除

简单语句实现用户添加.删除 导读 本人苏小白,一名刚刚跨入linux世界的小白菜.最近一直通过<linux就该这么学>学习linux知识,前几天在网上看到了一则关于普通用户添加.删除shell脚本命令的题目,当时自己不会编写,但是把题目记录了下来!后来通过学习<linux就该这么学>,完成了题目所需.希望需者能看到,同时有什么不正确的地方希望大牛们能指正留言! 题目要求: 编辑shell脚本命令,实现普通用户的添加与删除. 要求: 1.添加(删除)普通用户是要查询普通用户是否已存在

无cmd命令行下添加用户的方法:API添加用户与Shell.Users

之前有个html" target=_blank>xp下利用控制面板的cpl文件留后门,然后又有了用.cpl文件加账号的技术,lcx真的很厉害 今天研究了一下用户控制面板文件nusrmgr.cpl,发现调用的是Shell.Users来加用户,它还同时调用了wscript.shell.Shell.Application.Shell.LocalMachine这三个组件.不过加用户的话,这一个Shell.Users就足够了.那么可能在删掉了net.exe和不用adsi之外,这也可能是一种新的加用户

ubuntu添加新用户并添加管理员权限

Ubuntu创建新用户并增加管理员权限  Family 2014-06-24 22:21:22 $是普通管员,#是系统管理员,在Ubuntu下,root用户默认是没有密码的,因此也就无法使用(据说是为了安全).想用root的话,得给root用户设置一个密码: $ sudo passwd root然后登录时用户名输入root,再输入密码就行了.ubuntu建用户最好用adduser,虽然adduser和useradd是一样的在别的linux糸统下,但是我在ubuntu下用useradd时,并没有创

Django Admin 添加readonly用户

Django默认没有只读权限,只能自己实现.查看了大量的资料,总算搞定了. 修改admin.py from django.contrib.admin.util import flatten_fieldsets #引入类 class GconfAdmin(admin.ModelAdmin): list_display=('mailserver','mailsender','mail_on_off','sms_on_off') #搜索字段 search_fields=('mailserver','m

Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验

Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单总结一下成功安装方法: 1,Vmware Player 12.1.1-3770994(Virtual Box 老版本Win10上启动不了,新版本5.1不再支持Mac OS) 2,执行命令关闭Hyper-v服务重启:bcdedit /set hypervisorlaunchtype off (不然无法