暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

openGauss每日一练第4天 | 数据库角色相关操作

原创 田灬禾 2021-12-05
227

打卡第四天,学习体会

    今天主要学习数据库角色的相关操作,增、删、改及赋予角色相关权限和回收,顺道看了下官方对角色一些说明,角色是拥有数据库对象和权限的实体。在不同的环境中角色可以认为是一个用户,一个组或者兼顾两者,在非三权分立时,只有系统管理员和具有CREATEROLE属性的用户才能创建、修改或删除角色。三权分立下,只有初始用户和具有CREATEROLE属性的用户才能创建、修改或删除角色。

在实际操作角色时,有点感觉不一样的地方,创建角色需要指定密码,这点目前有点不是很理解,跟oracle有点不样,在这里先做下记号;

这里有个建议,gsql功能 能否支持失败的命令可以通过上下键查找到,有时只是因为缺少某个字或写错某个字母,就要重写,有点费时。

这里赋上相关创建角色的官方地址:https://opengauss.org/zh/docs/2.1.0/docs/Developerguide/CREATE-ROLE.html

这一练的一些命令:

\du或du+:查看所有角色信息,如后面跟上具体角色名则查看该角色信息;

课后作业

1.创建角色role1为系统管理员, role2指定生效日期, role3具有LOGIN属性

openGauss=# create role role1 sysadmin identified by 'test_123';
CREATE ROLE
openGauss=# create role role2 password 'test_123' valid begin '2021-12-06';
CREATE ROLE
openGauss=# create role role3 login password 'test_123'; 
CREATE ROLE
openGauss=# 
openGauss=# \du List of roles Role name | Attributes | Member of -----------+------------------------------------------------------------------------------------------------------------------+----------- omm | Sysadmin, Create role, Create DB, Replication, Administer audit, Monitoradmin, Operatoradmin, Policyadmin, UseFT | {} role1 | Cannot login, Sysadmin | {} role2 | Cannot login +| {} | Role valid begin 2021-12-06 00:00:00+08 | role3 |

2.重命名role1

openGauss=# alter role role1 rename to role10;
ALTER ROLE
openGauss=# \du List of roles Role name | Attributes | Member of -----------+------------------------------------------------------------------------------------------------------------------+----------- omm | Sysadmin, Create role, Create DB, Replication, Administer audit, Monitoradmin, Operatoradmin, Policyadmin, UseFT | {} role10 | Cannot login, Sysadmin | {} role2 | Cannot login +| {} | Role valid begin 2021-12-06 00:00:00+08 | role3 | | {}

3.修改role2密码

openGauss=# alter role role2 identified by 'test@123' replace 'test_123';
ALTER ROLE
openGauss=# 

4.将omm权限授权给role3,再回收role3的权限

openGauss=# grant omm to role3 with admin option;
GRANT ROLE
openGauss=# \du+ role3
                  List of roles
 Role name | Attributes | Member of | Description 
-----------+------------+-----------+-------------
 role3     |            | {omm}     | 

openGauss=# revoke all privilege from role3; ALTER ROLE
openGauss=# \du+ role3 List of roles Role name | Attributes | Member of | Description -----------+------------+-----------+------------- role3 | | {omm} |

5.删除所有创建角色

openGauss=# drop role role10;
DROP ROLE
openGauss=# drop role role2;
DROP ROLE
openGauss=# drop role role3;
DROP ROLE
openGauss=# \du
                                                              List of roles
 Role name |                                                    Attributes                                                    | Member of 
-----------+------------------------------------------------------------------------------------------------------------------+-----------
 omm       | Sysadmin, Create role, Create DB, Replication, Administer audit, Monitoradmin, Operatoradmin, Policyadmin, UseFT | {}

openGauss=# 


最后修改时间:2021-12-09 21:28:48
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论