PostgreSQL创建只读权限的用户

1、创建只读角色

CREATE ROLE readaccess;

2、授予对现有表的访问权限

GRANT USAGE ON SCHEMA public TO readaccess;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO readaccess;

3、授予后面新增表的访问权限

ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO readaccess;

4、创建用户

CREATE USER tomek WITH PASSWORD 'mypassword';
GRANT readaccess TO testuser;

版权声明:著作权归作者所有。

相关推荐

忘记PostgreSQL的安装密码重置密码

忘记PostgreSQL的安装密码,需要使用无密码的方式登陆,这样需要重启postgresql。1、备份配置文件pg_hba.conf我们需要对pg-hba.conf修改,在改动前最好先备份它。它一般在/etc/postgresql-9.1/pg_hba.conf。cd /etc/postgresql-9.3/ cp pg_hba.conf pg_hba.conf-b

Python安全创建目录的方法

在介绍Python安全创建目录之前,先举一个不安全创建目录的方式:if not os.path.exists(directory):     os.makedirs(directory) 在例子里,先判断目录是否存在,然后创建目录。这种方式是不安全的,它会导致竞争条件。在os.path.exists()和os.makedirs()之间的时

Java创建文件的常用方法

Java创建文件有几种常用的方法File.createNewFile()创建空白文件java.io.File类里的方法createNewFile()可以用来创建文件。createNewFile()新建的是空文件。创建文件首先要使用File类构建将要被创建的文件,然后再调用createNewFile()把新文件创建出来。createNewFile()的结果分为三种情况:新文件创建成功返回true。如

Linux:使用visudo设置用户sudo权限

visudo我们可以修改/etc/sudoers文件来设置用户的sudo权限,修改/etc/sudoers一定要使用visudo命令,它可以让我们比较安全的修改此文件。visudo有以下特性:锁定文件避免多个同时编辑检查语法的完整性检查解析错误,以避免用户错误输入使用root的权限直接执行visudo,打开suders文件$visudo 注意:这里不需要输入shduers文件的路径,默认为/etc

Django:创建JSON响应

Django 1.7之前版本在Django1.7之前可以结合json以及HttpResponse创建json响应import json from django.http import HttpResponse response_data = {} response_data['result'] = 'er

Python校验处理用户输入的方法

Python处理用户输入需要考虑几个问题:用户输入的数据是否合法用户输入非法数据是否会抛出异常用户输入非法数据后,给出友好提示并等待继续输入在Python里比较简单的做法是使用一直循环,如果用户输入错误数据,执行continue继续等待用户输入,如果用户输入正确数据,执行break跳出循环。用户输入可能会抛出异常这里需要使用try-catch来捕获用户输入非法数据导致的异常。python