视频: linux内核编程(入门篇)第2章保护模式(第2节) 2024
创建用户,您必须决定用户可以在Oracle 12c数据库中执行哪些类型的操作。您可能希望允许用户登录,但您可能需要限制用户是否可以执行以下任一任务:
-
访问某些数据
-
启动和停止数据库
-
创建表,索引和视图
-
删除数据
<! --1 - > -
执行备份
您可以通过 权限确定用户可以执行的操作。 数据库有两种权限:
-
系统权限 控制用户在数据库中可以执行的操作。例如,他们可以创建表,创建用户和删除表空间吗?这些权限主要适用于添加或更改数据库中的结构。对象权限
-
控制用户如何访问数据库中的实际数据。例如,他可以查看,更改或删除哪些数据?这些权限主要适用于表或视图中的行。
在任何用户可以对数据库做任何事情之前,他们需要能够连接,CREATE SESSION特权让用户访问数据库。没有这个特权,没有其他特权是重要的。
按照以下步骤为用户DTITILAH授予CREATE SESSION权限:以用户SYSTEM的身份登录到数据库。
输入以下内容:
-
您会看到以下内容,表示DTITILAH可以连接到数据库:
-
授予成功。
如果用户DTITILAH的密码已被盗用,该怎么办?确保用户不能再访问数据库的快速方法是从该用户撤销CREATE SESSION特权。
使用以下步骤从DTITILAH中撤销CREATE SESSION:
以SYSTEM身份登录到数据库。键入以下内容:
您看到:
-
撤销成功。
-
错误:ORA-01045:用户DTITILAH缺少CREATE SESSION权限;登录被拒绝
通过找出密码被泄密的原因来解决安全漏洞。
用户也可能具有这些系统权限,允许他们在数据库中创建对象:
RESUMABLE
允许在满足空间限制时暂停和恢复作业。
-
FLASHBACK ARCHIVE
允许用户从过去检索数据。
-
CREATE JOB 允许用户创建可以在Oracle计划程序中运行的作业。
-
CREATE SYNONYM 允许用户能够为对象创建别名,以便于访问。
-
以下权限适用于开发人员: CREATE TABLE
-
CREATE VIEW CREATE SEQUENCE
CREATE PROCEDURE
-
CREATE TRIGGER
-
数据库管理员(DBA)通常具有以下特权: CREATE ANY TABLE
-
在任何用户的模式中创建表。 DROP ANY TABLE
-
从任何用户的模式中删除表。
-
CREATE TABLESPACE
创建表空间存储区域。
-
ALTER USER 更改用户特征。
-
删除用户 …呃,删除用户。
-
ALTER SYSTEM 更改系统操作参数。
-
授予任何对象 允许被授予者针对数据库中的任何对象管理任何对象特权。很强大! WITH ADMIN OPTION是与系统权限关联的另一个功能。授予系统特权以允许用户将权限授予其他人时,可以使用此选项。例如,假设你已经雇用了一个新的用户名为RPLEW的DBA。
-
<!你希望用户MJAUST使用CREATE SESSION权限连接到数据库,但是你也希望他能够把这个权限授予别人。 要授予系统特权WITH ADMIN OPTION,请执行以下步骤:
-
以SYSTEM身份登录到SQL * Plus。 输入以下内容:
-
您看到: 授予成功。
现在还可以管理CREATE SESSION。
<! - 2 - >如果WITH ADMIN OPTION被撤销,那么被该人授予该特权的所有用户都将保留特权。按指示行动。它不像WITH GRANT OPTION那样是级联的撤销。