Oracle 是一款备受欢迎的关系型数据库管理系统,运行在大量的企业和数据中心中。通过与数据访问语言(例如SQL和PL / SQL)的集成,它为世界各地的企业提供了安全性和性能优势,交付在全球分布式环境中应用服务所需的弹性。此外,它还提供访问控制,确保只有持有所需权限的用户才能访问数据库。
Oracle 的重要安全特性之一是其对用户的权限管理方式。这种控制依靠Oracle用户类型的细粒度设计,这些类型定义了用户被授予的权限和它们的能力。在Oracle数据库中,一个用户可以属于一个或多个类型,它为数据库提供了弹性和更细粒度的安全控制。
下面是这些用户类型的类别示例:
##### 1.实体用户:
实体用户是拥有对实体对象执行操作(例如表、行和列)的权限的用户。只有实体用户才能登录到数据库的客户端环境中,允许他们运行SQL查询,创建表格,查看和编辑行并执行其他操作。
这些权限可以通过分配角色来限制。例如,可以限制某个实体用户不能创建新表格或不能正确更新有关数据行:
“`bash
GRANT CREATE TABLE TO ;
GRANT UPDATE TO ;
##### 2.基本集成环境用户:
基本集成环境(BIE)用户具有实体用户没有的权限,他们可以访问和操作服务器端存储区,创建数据库视图以及访问Oracle统计和数据字典的服务器端对象。
可以通过以下赋权语句来分配某些BIE用户特定的权限:
```bash
GRANT SELECT ON TO ;
GRANT CREATE [VIEW|SYNONYM] TO ;
GRANT INSERT ON
##### 3.系统级用户
系统级用户可以连接到数据库服务器,并有与基本介绍环境用户类似的权限,以及某些额外的权限,例如,为其他用户创建/删除数据库表格,删除数据行,更新数据字典等。
可以使用以下赋权命令来授予特定的系统级用户的权限:
“`bash
GRANT CREATE|ALTER|DROP TABLE TO ;
GRANT DELETE|UPDATE ON
GRANT SELECT ON TO ;
##### 4.内部用户
内部用户拥有最高程度的权限,因为它们允许对数据库和对象进行管理性操作,并可以执行任何操作,没有任何限制。
可以使用以下赋权命令来授予特定的内部用户的权限:
```bash
GRANT ALL PRIVILEGES ON TO ;
GRANT ALL PRIVILEGES TO ;
虽然上面提到的类型仅涵盖Oracle用户类型的一部分,但它们涵盖了大多数常用用户类型,而且允许数据库管理员对数据的访问进行更详细的控制。它们的授权键入可以是一个挑战,但是如果你能够明白它们的含义,这将有助于实现安全的数据库环境。