Greeplum 系列(七) 权限管理

一、角色管理

Role 分为用户(User)和组(Group),用户有 login 权限,组用来管理用户,一般不会有 login 权限。初始化 gp 时创建了一个 SUPERUSER ROLE:gpadmin。

表 1 :ALTER ROLE 属性

属性 说明
SUPERUSER/NOSUPERUSER 超级管理员,默认 NOSUPERUSER
CREATEDB/OCREATEDB 创建数据库的权限
CREATEROLE/NOCREATEROLE 创建角色的权限
INHERIT/NOINHERIT 继承组或父用户的权限
LOGIN/NOLOGIN 登陆
CONNECTION LIMIT connlimit 限制连接数
PASSWORD 'password' 密码
ENCRYPTED/UNENCRYPTED 是否加密
VALID UNTIL 'timestamp' 帐户有效期
RESOURCE QUEUE queue_name 资源队列
DENY {deny_interval/deny_point} 拒绝某些连接

(1) 创建用户

create role lei with login;             # 创建用户
drop owned by lei; # 删除用户
reassign owned by oldUser to newUser; # 将 oldUser 的权限赋予 newUser
alter role lei password '123456'; # 修改密码
alter role lei valid until 'infinity'; # 永不失效
alter role lei deny day 'Sunday';
alter role lei resource queue queue1;
alter role lei set search_path to sc01,public;

(2) 创建组

# 创建组
create role admin createrole createdb;
# 添加或删除组成员
grant admin to lei;
revoke admin from lei;
# 赋予合适的权限给组 admin
grant all on table mytable to admin;
grant all on schema myschema to admin;
grant all on database mydb to admin;
# 获取管理属性
set role admin;

(3) 对象权限管理

表 2 :对象权限

属性 说明
Tables、Views、Sequences SELECT、INSERT、UPDATE、DELETE、RULE、ALL
External Tables SELECT、RULE、ALL
Databases CONNECT、CREATE
TEMPORARY、TEMP ALL
Functions EXECUTE
Procedural Languages USAGE
Schemas CREATE、USAGE

(4) 基于时间的登录认证

通过 BETWEEN 和 AND 关键字连接两个日期/时间。

BETWEEN DAY 'Monday' AND DAY 'Tuesday'
BETWEEN DAY 'Monday' TIME '00:00' AND DAY 'Monday' TIME '01:00'
BETWEEN DAY 'Monday' TIME '12:00 AM' AND DAY 'Tuesday' TIME '02:00 AM'
BETWEEN DAY 'Monday' TIME '00:00' AND DAY 'Tuesday' TIME '02:00'
BETWEEN DAY 1 TIME '00:00' AND DAY 2 TIME '02:00'

注意:日期间隔不能跨 Saturday(周六)

Incorrect: DENY BETWEEN DAY 'Saturday' AND DAY 'Sunday'

删除时间约束,原则:有交集即移出

ALTER ROLE dylan DROP DENY FOR DAY ‘Monday’;

(5) 配置客户端认证

修改 $MASTER_DATA_DIRECTORY/pg_hba.conf

# local(本地)/host(远程) dbname role authmethod
local all gpadmin ident
host all gpadmin 127.0.0.1/28 trust
host all gpadmin 192.168.2.110/32 trust
host all gpadmin ::1/128 trust
host all gpadmin fe80::250:56ff:fe2a:552a/128 trust
local replication gpadmin ident
host replication gpadmin samenet trust
host all gpadmin 0.0.0.0/0 md5
host all lei 0.0.0.0/0 md5
local all lei trust

重新加载 pg_hba.conf 使修改生效

gpstop –u

二、配置客户端($MASTER_DATA_DIRECTORY/postgresql.conf)

postgresql.conf 是 Greenplum 中一个重要的配制文件,下面介绍几个重要的配制项。

# 限制并发操作的连接的两个配制
max_connections = 250 # 最大连接数,Segment 最少是 Master 的 3 倍
max_prepared_transactions = 250 # 最大事务

每天用心记录一点点。内容也许不重要,但习惯很重要!

Greeplum 系列(七) 权限管理的更多相关文章

  1. [Django]用户权限学习系列之权限管理界面实现

    本系列前三章: http://www.cnblogs.com/CQ-LQJ/p/5604331.htmlPermission权限基本操作指令 http://www.cnblogs.com/CQ-LQJ ...

  2. 一步一步Asp.Net MVC系列_权限管理总结(附MVC权限管理系统源码)

    在上一节中我们总结了关于权限控制的方式,我们这一节讲解关于权限控制中角色权限的授予处理等等并做本系列的总结. 首先,我们来谈谈权限控制中角色权限的控制,上一节只是针对权限拦截中比较粗的控制,如果我们需 ...

  3. Shiro系列(1) - 权限管理的介绍与原理

    1. 什么是权限管理 一般来说,只要有用户参与,那么该系统都会需要权限管理,权限管理实现了对用户访问系统  指定功能的限制,按照管理员定义的安全规则或权限策略,限制用户只能访问自己被授权的那些资源路径 ...

  4. Shiro系列(0) - 权限管理在J2EE企业级开发中的应用与实战

    其实也是应大家要求,讲一下权限管理,之前有讲过,但是没有拿出来细讲,这次索性录了视频从头到尾把shiro讲一遍.后续spring security会另外找个时间也讲一下. 主要内容会包括以下 1.了解 ...

  5. 一步一步Asp.Net MVC系列_权限管理设计

    http://www.cnblogs.com/mysweet/archive/2012/07/26/2610793.html

  6. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(9)-TT模板的学习

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(9)-TT模板的学习 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    (2): ...

  7. [Django]用户权限学习系列之设计自有权限管理系统设计思路

    若在阅读本片文章遇到权限操作问题,请查看本系列的前两章! http://www.cnblogs.com/CQ-LQJ/p/5609690.html和http://www.cnblogs.com/CQ- ...

  8. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(24)-权限组的设计和实现(附源码)(终结)

    ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    (2):数据库访问层的设计Demo    (3):面向接口编程   (4 ):业务逻辑层的封装    ...

  9. ASP.NET MVC+EF框架+EasyUI实现权限管理系列

    http://www.cnblogs.com/hanyinglong/archive/2013/03/22/2976478.html ASP.NET MVC+EF框架+EasyUI实现权限管理系列之开 ...

随机推荐

  1. MySQL-with rollup函数运用

    如果想在下面这个表下面添加一行 总计 数据行SQL代码怎么实现 并且根据9月金额进行城市降序 总计置于底部呢 MySQL提供了 group by with rollup 函数进行group by 字段 ...

  2. chrom调试javascript

    上面的文章已经大致介绍了一下console对象具体有哪些方面以及基本的应用,下面简单介绍一下如何利用好chrome控制台这个神器好好调试javascript代码(这个才是我们真正能用到实处的地方) 1 ...

  3. 转--NLTK的内置函数

    NLTK的内置函数 1. 词语索引 (1) concordance函数    给出一个指定单词每一次出现,连同上下文一起显示. >>>text1.concordance('monst ...

  4. Web Api HelpPage

    为了方面APP开发人员,服务端的接口都应当提供详尽的API说明.但每次有修改,既要维护代码,又要维护文档,一旦开发进度紧张,很容易导致代码与文档不一致. Web API有一个Help Page插件,可 ...

  5. /proc目录下文件详解

    /proc “文件系统”是一个目录,其中包含的文件层次结构代表了 Linux 内核的当前状态.它允许用户和管理员查看系统的内核视图. /proc 目录中还包含关于系统硬件及任何当前正在运行的程序信息. ...

  6. oracle9i-11.2安装包及补丁包下载链接

    ORACLE 9i Oracle9i Database Release 2 Enterprise/Standard/Personal Edition for Windows NT/2000/XPhtt ...

  7. javascript instanceof,typeof的区别

    区分string 与 String的区别 为什么结果会是false呢? <script type="text/javascript"> var aColors = [& ...

  8. 如何设置mysql允许外网访问

    修改表,登录mysql数据库,切换到mysql数据库,使用sql语句查看"select host,user from user ;" console: >use mysql; ...

  9. http://www.5xcg.com/bbs/forum.php?mod=viewthread&tid=51143&extra=page%3D1

    http://www.5xcg.com/bbs/forum.php?mod=viewthread&tid=51143&extra=page%3D1 因为身在酒店设备有限,只能尽量把文字 ...

  10. 行为型-命令模式(Command)

    装修新房的最后几道工序之一是安装插座和开关,通过开关可以控制一些电器的打开和关闭,例如电灯或者排气扇.在购买开关时,我们并不知道它将来到底用于控制什么电器,也就是说,开关与电灯.排气扇并无直接关系,一 ...