Greenplum中角色权限及客户端认证管理

角色权限及客户端认证管理

GP数据库逻辑结构

         在GP中,Database(数据库)、Schema(模式)以及Role(角色)三者之间的关系如下所示:

  • 一个数据库下可以有多个模式,一个模式只属于一个数据库。模式在GP中也被称为Namespace,不同数据库之间的模式没有关系,可以重名;
  • 语言在使用之前必须创建,一个语言只属于一个数据库;
  • 表、视图、索引、序列、函数必须属于一个模式;
  •  一个文件空间可以有多个表空间,一个表空间只属于一个文件空间,文件空间和角色之间没有关系;
  • 表空间和表时一对多的关系,一个模式下的表可以分布在多个表空间下;
  • 除了文件空间之外,其他的权限管理都是通过角色来实现,在这些层次结构中,用户必须对上一层有访问权限才能够访问该层的内容;

 

什么是角色(role)

  •  Role的组成:由用户(User)和组(Group)组成;
  •   跟OS的role没有关系;
  •  User通过Master节点登录和认证的;
  •  Role是定义在GPDB系统级别的;
  •  初始化SUPERUSERROLE:gpadmin。

角色与权限安全的最佳实践

  •  保护系统gpadmin的用户;
  •  为每个登录的User分配不同的角色;
  • 使用组来管理权限从而实现管理组;
  •  控制具备SUPERUSER属性的User数量。

创建Role

创建用户User Role

         使用CREATE ROLE创建一个User Role,语法如下所示:

template1-# ]\h create role

Command:     CREATE ROLE

Description: define a new database role

Syntax:

CREATE ROLE name [[WITH] option [ ... ]]

where option can be:

      SUPERUSER | NOSUPERUSER

    | CREATEDB | NOCREATEDB

    | CREATEROLE | NOCREATEROLE

    | CREATEEXTTABLE | NOCREATEEXTTABLE

      [ ( attribute='value'[, ...] ) ]

           where attributes and values are:

           type='readable'|'writable'

           protocol='gpfdist'|'http'|'gphdfs'

    | INHERIT | NOINHERIT

    | LOGIN | NOLOGIN

    | CONNECTION LIMIT connlimit

    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'

    | VALID UNTIL 'timestamp'

    | IN ROLE rolename [, ...]

    | ROLE rolename [, ...]

    | ADMIN rolename [, ...]

    | RESOURCE QUEUE queue_name

例如: # CREATE ROLE mavshuangWITH LOGIN;

template1=# CREATE ROLE mavshuang WITH LOGIN;

NOTICE:  resource queue required -- using default resource queue "pg_default"

CREATE ROLE

 

ALTER ROLE属性

         使用ALTER ROLE修改角色的属性,语法如下所示:

template1-# \h alter role

Command:     ALTER ROLE

Description: change a database role

Syntax:

ALTER ROLE name RENAME TO newname

ALTER ROLE name SET config_parameter {TO | =} {value | DEFAULT}

A

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值