mysql中create role_GP数据库中角色(Role)的创建和管理

一、GP数据库中角色(Role)的创建和管理

1、客户端通过角色(role)来访问数据库。什么是角色?角色相当于linux系统中用户和组的概念,角色可以是GP数据库的一个用户,也可以是一个组,也可以是包含很多用户的一个组。

2、角色可以创建自己的数据库对象,并可以赋予其他角色访问这些对象的权限。

3、角色可以是其他角色的成员,子角色继承父角色的对象权限。

4、GP中默认的管理员角色gpadmin,他拥有管理GP数据库的最高权限,可以绕过所有安全检查,访问数据库。

二、创建角色(user、group)

a、创建角色

mydb=# create role user01 with login; --创建user01的角色,并赋权运行其登陆数据库。

NOTICE: resource queue required -- using default

resource queue "pg_default"

CREATE ROLE

修改角色的属性

b、角色的属性:

SUPERUSER | NOSUPERUSER --是否是超级管理员,默认是NOSUPERUSER

CREATEDB | NOCREATEDB --角色是否可以创建数据库,默认是NOCREATEDB

CREATEROLE | NOCREATEROLE --角色是否可以创建和管理其他角色,默认是NOCREATEROLE

INHERIT | NOINHERIT --角色是否可以继承其他角色的权限,默认是INHERIT

LOGIN | NOLOGIN --角色是否可以登陆数据库,一般来说,如果这个角色是用户,那么应该为login,如果是group,那么应该是nologin

CONNECTION LIMIT connlimit --设置该角色的最大连接数,-1为不限制

PASSWORD ‘password’ --设置角色的密码

ENCRYPTED | UNENCRYPTED VALID UNTIL ‘timestamp’ --密码的有效期,如果password参数未设置或者null,该参数无效

RESOURCE QUEUE queue_name --角色使用的资源队列,默认使用GP数据库默认的资源队列pg_default

DENY {deny_interval | deny_point} --指定拒绝登陆的时间范围

example:

# ALTER ROLE jsmith WITH PASSWORD 'passwd123';

# ALTER ROLE admin VALID UNTIL 'infinity';

# ALTER ROLE jsmith LOGIN;

# ALTER ROLE jsmith RESOURCE QUEUE adhoc;

# ALTER ROLE jsmith DENY DAY 'Sunday';

c、角色的权限管理

--创建一个角色user01

mydb=# create role user01;

NOTICE: resource queue required -- using default

resource queue "pg_default"

CREATE ROLE

--修改角色user01的属性:允许登陆以及密码

mydb=# alter role user01 login password 'user01';

ALTER ROLE

--赋权user01使用模式mysch01的权限

mydb=# grant all on schema mysch01 to user01;

GRANT

--赋权user01查询t01表的权限

mydb=# grant select on t01 to user01;

GRANT

--将一个角色授予另一个角色

mydb=# grant user01 to rol01;

GRANT ROLE

d、查询GP库中的角色情况:

mydb=# select

rolname,rolsuper,rolinherit,rolcreaterole,rolcreatedb,rolcanlogin,rolconnlimit

from pg_roles;

rolname | rolsuper | rolinherit | rolcreaterole |

rolcreatedb | rolcanlogin | rolconnlimit

---------+----------+------------+---------------+-------------+-------------+--------------

rol01 |

f |

t |

f |

f |

t | -1

loach |

f |

t |

f |

t |

t | -1

test |

f |

t |

f |

f |

t | 2

gpadmin |

t |

t |

t |

t |

t | -1

user01

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值