#用户管理

# 用户

用户,即登录数据库的账号,是能对数据库进行访问的一个逻辑的对象。YashanDB中的用户分为:

  • 系统用户

    系统用户是预置在YashanDB中的用户,超级管理员,负责数据库系统的管理,拥有全部的权限。账号名称为sys,密码必须通过yaspwd工具生成和维护。

  • 普通用户

    使用SQL语句创建的用户为普通用户,可通过对普通用户进行授权明确其对应的身份,例如DBA、安全管理员、审计管理员等。

# 特权

YashanDB使用户只能在权限限制的范围内操作数据库,以保证数据库的安全。

# 系统特权

系统特权是一类可支持执行某种系统级操作的权限,可能作用于对象,也可能作用于数据库级别的操作。

通过系统权限视图可查看当前系统中所有授权的系统权限信息。

系统特权的功能十分广泛,请慎重授权。通常仅由管理员执行系统特权的授予,保证被授权者是可信的用户或角色。

系统特权包括:

  • 系统管理类权限:管理操作数据库、表空间和会话对象。

  • 安全管理类权限:管理用户、角色和授权操作。

  • 对象操作类权限:管理表、索引、视图、序列、同义词、自定义类型、存储过程、触发器、自定义库、数据库链接和物化视图等对象。

  • 其它系统权限:管理存储纲要、统计信息和PROFILE等。

# 对象特权

对象特权允许用户对指定的对象执行指定的操作,YashanDB支持的对象特权是基于表的各项对象操作权限,包括ALL PRIVILEGES、INSERT、SELECT、UPDATE、DELETE、ALTER、INDEX、FLASHBACK和READ。

# 角色

角色(Role)是一组特权和其它角色的集合,角色有助于管理用户或应用程序的权限,用户可以将角色授予用户或其它角色。

当把一组权限赋予给某个角色后,角色即可参与到权限体系中,使用角色能大大简化对权限的管理操作。例如,将创建的角色授予某个用户后,该用户即拥有了这个角色当前以及未来所拥有的所有权限。系统管理员对用户只需关注其角色,对角色只需关注其权限集,简化权限管理。

YashanDB中的角色分为:

  • 内置(系统预定义)角色

    YashanDB中内置角色包括:DBA、SYSDBA、SYSOPER、AUDIT_ADMIN、SECURITY_ADMIN、PUBLIC、CONNECT、RESOURCE和SELECT_CATALOG_ROLE。

  • 自定义角色

    用户可根据自身权限机制设计对应的角色,包括如下信息:

    • 角色名称:与角色所包含的权限集合相关联的有意义的唯一标识符,不能与系统中已有的用户、角色、权限重名。
    • 包含权限:将某个权限授权给一个角色,该权限即被纳入到角色所包含的权限集合中。

# 授权和解除授权

YashanDB提供授权或取消授权的功能,使客户可以按照企业的实际业务进行权限管理,可以让数据库管理员更有效地管理数据库的访问行为和保障数据库的安全。

  • 授权:在确认被授权用户(或角色)是安全、可信的,且其所需要的权限和角色(或权限)相匹配后,可以对用户进行角色(或权限)的授权。

  • 解除授权:在确认被解除授权的用户(或角色)不再需要该角色(或权限),且解除后不会影响业务的正常运行后,可以对用户进行角色(或权限)的解除授权。

# 用户配置文件(profile)

用户资源配置文件(profile)是YashanDB给用户分配的一组资源限制的集合,多个用户可以共享同一个配置文件。在YashanDB中,profile主要用于定义密码策略相关限制。