跳转到内容

Oracle 数据库/用户管理

来自 Wikibooks,开放世界中的开放书籍

在 Oracle 中,可以通过管理部分中的网页以及数据库用户子部分来管理用户。

创建和管理数据库用户帐户

[编辑 | 编辑源代码]

添加用户

[编辑 | 编辑源代码]

管理员或拥有“创建用户”权限的用户可以通过单击“用户”部分中的“创建”链接来创建新用户,使用 Oracle Enterprise Manager GUI。输入新用户的用户名和密码。您还可以设置密码过期(用户必须在下次登录时更改密码),以及帐户是否锁定(防止用户连接到系统)。

在大多数情况下,用户应属于 Connect 角色。如果用户需要创建表格或具有更高级的功能,则应将用户置于 Resource 角色中。数据库管理员应出现在 DBA 角色中。如果需要,可以在“直接授予权限”部分中为用户提供单独的权限。

或者,也可以使用“CREATE USER”SQL 命令创建用户。

例如

CREATE USER UserTest IDENTIFIED BY MyComplexPassword DEFAULT TABLESPACE Wikibooks PASSWORD EXPIRE QUOTA UNLIMITED ON Wikibooks;
GRANT CONNECT TO UserTest;

创建用户后,需要为用户授予“CONNECT”角色才能连接到数据库。

列出用户

[编辑 | 编辑源代码]
SELECT * FROM ALL_USERS

删除用户

[编辑 | 编辑源代码]

当不再需要用户存在于数据库中时,您可以在 Web 界面中单击下拉按钮。

脚本化它

DROP USER UserTest;

要删除附加到用户的对象[1]

DROP USER UserTest CASCADE;

创建和管理角色

[编辑 | 编辑源代码]

角色列表可通过以下方式获取

SELECT * FROM DBA_ROLES;
CONNECT
RESOURCE
DBA
SELECT_CATALOG_ROLE
EXECUTE_CATALOG_ROLE
DELETE_CATALOG_ROLE
EXP_FULL_DATABASE
IMP_FULL_DATABASE
LOGSTDBY_ADMINISTRATOR
DBFS_ROLE
AQ_ADMINISTRATOR_ROLE
AQ_USER_ROLE
DATAPUMP_EXP_FULL_DATABASE
DATAPUMP_IMP_FULL_DATABASE
ADM_PARALLEL_EXECUTE_TASK
GATHER_SYSTEM_STATISTICS
XDB_WEBSERVICES_OVER_HTTP
RECOVERY_CATALOG_OWNER
SCHEDULER_ADMIN
HS_ADMIN_SELECT_ROLE
HS_ADMIN_EXECUTE_ROLE
HS_ADMIN_ROLE
OEM_ADVISOR
OEM_MONITOR
PLUSTRACE
CTXAPP
XDBADMIN
XDB_SET_INVOKER
AUTHENTICATEDUSER
XDB_WEBSERVICES
XDB_WEBSERVICES_WITH_PUBLIC
APEX_ADMINISTRATOR_ROLE

可以创建个性化角色[2]

CREATE ROLE MyRole;
GRANT CONNECT TO MyRole;
GRANT DBA TO MyROLE;

然后可以使用它与用户一起使用

GRANT MyROLE TO UserTest

撤销权限

[编辑 | 编辑源代码]

我们可以从用户或角色中撤销权限

REVOKE CONNECT FROM MyRole;

修改权限

[编辑 | 编辑源代码]

我们可以通过以下方式更改密码

ALTER ROLE MyRole IDENTIFIED BY MyPassword;

删除角色

[编辑 | 编辑源代码]

我们可以删除角色

DROP ROLE MyRole;

控制用户资源使用

[编辑 | 编辑源代码]

应用原则权限

[编辑 | 编辑源代码]

管理帐户

[编辑 | 编辑源代码]

实施标准密码安全功能

[编辑 | 编辑源代码]

审计数据库活动

[编辑 | 编辑源代码]

注册安全更新

[编辑 | 编辑源代码]

区分系统权限和对象权限

[编辑 | 编辑源代码]

授予表格上的权限

[编辑 | 编辑源代码]

查看数据字典中的权限

[编辑 | 编辑源代码]

区分权限和角色

[编辑 | 编辑源代码]


参考文献

[编辑 | 编辑源代码]
华夏公益教科书