千家信息网

管理(004):密码文件 & 用户

发表于:2024-11-18 作者:千家信息网编辑
千家信息网最后更新 2024年11月18日,一、密码文件中添加用户当您将 SYSDBA、SYSOPER、SYSBACKUP、SYSDG 或 SYSKM 管理权限授予用户时,该用户的名称和权限信息将添加到数据库密码文件中。只有当用户至少具有其中一
千家信息网最后更新 2024年11月18日管理(004):密码文件 & 用户

一、密码文件中添加用户

当您将 SYSDBA、SYSOPER、SYSBACKUP、SYSDG 或 SYSKM 管理权限授予用户时,该用户的名称和权限信息将添加到数据库密码文件中。
只有当用户至少具有其中一种权限时,用户名才会保留在密码文件中。如果您撤消所有这些权限,那么 Oracle 数据库将从密码文件中删除用户。
创建密码文件并向其中添加新用户
使用以下步骤创建密码文件并向其中添加新用户:

  1. 按照"Creating a Database Password File with ORAPWD"中的说明创建密码文件。
  2. 将 REMOTE_LOGIN_PASSWORDFILE 初始化参数设置为exclusive。(这是默认值。)
    如果试图授予这些权限,但初始化参数 REMOTE_LOGIN_PASSWORDFILE 没有正确设置,Oracle数据库将发出错误。
  3. 以 SYSDBA 权限连接,如下例所示,并在提示时输入 SYS 密码:
    CONNECT SYS AS SYSDBA
  4. 启动实例并在必要时创建数据库,或者挂载并打开现有数据库。
  5. 根据需要创建用户。将 SYSDBA、SYSOPER、SYSBACKUP、SYSDG 或 SYSKM 管理权限授予您自己和其他用户。参见"Granting and Revoking Administrative Privileges"。

二、授予和撤消管理员权限

使用 GRANT 语句授予管理权限。使用 REVOKE 语句撤消管理权限。
例如:

 GRANT SYSDBA TO mydba;REVOKE SYSDBA FROM mydba;

如果在授予管理权限的 GRANT 语句中指定 WITH ADMIN 选项,则忽略该选项,并应用以下规则:

  • 当前连接为 SYSDBA 的用户可以将任何管理权限授予另一个用户,并从另一个用户撤消任何管理权限。
  • 当前连接为 SYSOPER 的用户不能向其他用户授予任何管理特权,也不能从其他用户撤消任何管理特权。
  • 当前连接为 SYSBACKUP 的用户可以授予或撤消另一个用户的 SYSBACKUP 管理权限。
  • 当前以 SYSDG 连接的用户可以授予或撤销另一个用户的 SYSDG 管理权限。
  • 当前连接为 SYSKM 的用户可以授予或撤销其他用户的 SYSKM 管理权限。

不能将管理权限授予角色,因为角色仅在数据库启动后可用。不要将数据库管理权限与操作系统角色混淆。

三、查看数据库密码文件成员

V$PWFILE_USERS视图包含关于已被授予管理权限的用户的信息。 要确定哪些用户被授予了管理权限:

  • 查询 V$PWFILE_USERS 视图。


0