用户
非三权分立下,openGauss用户帐户只能由系统管理员或拥有CREATEROLE属性的安全管理员创建和删除。三权分立时,用户帐户只能由初始用户和安全管理员创建。
在用户登录openGauss时会对其进行身份验证。用户可以拥有数据库和数据库对象(例如表),并且可以向用户和角色授予对这些对象的权限以控制谁可以访问哪个对象。除系统管理员外,具有CREATEDB属性的用户可以创建数据库并授予对这些数据库的权限。
要创建系统管理员,请使用带有SYSADMIN选项的CREATE USER语句 。
要更改用户帐户(例如,重命名用户或更改密码),请使用。
要查看用户列表,请查询视图PG_USER:
对于有多个业务部门,各部门间使用不同的数据库用户进行业务操作,同时有一个同级的数据库维护部门使用数据库管理员进行维护操作的场景下,业务部门可能希望在未经授权的情况下,管理员用户只能对各部门的数据进行控制操作(DROP、ALTER、TRUNCATE),但是不能进行访问操作(INSERT、DELETE、UPDATE、SELECT、COPY)。即针对管理员用户,表对象的控制权和访问权要能够分离,提高普通用户数据安全性。
三权分立情况下,管理员对其他用户放在属于各自模式下的表无权限。但是,这种无权限包含了无控制权限,因此不能满足上面的诉求。为此,openGauss提供了私有用户方案。即在非三权分立模式下,创建具有INDEPENDENT属性的私有用户。
openGauss提供永久用户方案,即创建具有PERSISTENCE属性的永久用户。
只允许初始用户创建、修改和删除具有PERSISTENCE属性的永久用户。
- 含有具体的IP地址的用户优先级最高,比如user_。
- 含有’%’的user_name,按照%的出现顺序决定优先级,%越靠后优先级越高,比如user_name@127.%优先级高于user_name@127%。
- 只含有’%’优先级最低。可匹配所有用户
具体创建的用户名称详情见CREATE USER语句。