news 2026/5/16 14:33:06

Oracle 数据库用户管理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Oracle 数据库用户管理

1.1、创建用户

Oracle 数据库中创建用户的语法有了显著增强,支持更多安全选项。

-- 基础创建用户 CREATE USER hr_user IDENTIFIED BY "Hr@2024!Secure" DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp QUOTA 500M ON users ACCOUNT UNLOCK PASSWORD EXPIRE; -- 强制密码区分大小写 ALTER SYSTEM SET sec_case_sensitive_logon = TRUE; -- 创建用户时指定 Profile CREATE USER fin_user IDENTIFIED BY "Fin@2024!Strong" PROFILE fin_profile DEFAULT TABLESPACE fin_ts QUOTA UNLIMITED ON fin_ts; -- 创建时指定认证方式 -- OS 认证 CREATE USER os_user IDENTIFIED EXTERNALLY; -- LDAP 认证 CREATE USER ldap_user IDENTIFIED GLOBALLY AS 'CN=John,OU=Dev,DC=corp'; -- Kerberos 认证 CREATE USER kerb_user IDENTIFIED GLOBALLY AS 'john@CORP.EXAMPLE.COM';

1.2、用户属性管理

Oracle 用户的关键属性包括:

属性

说明

USERNAME

用户名,CDB 中公共用户需以 C## 开头

IDENTIFIED BY

密码认证,12c 默认区分大小写

DEFAULT TABLESPACE

默认表空间,存储用户创建的对象

TEMPORARY TABLESPACE

临时表空间,用于排序和临时操作

QUOTA

表空间配额,限制用户可使用的空间

PROFILE

资源限制和密码策略配置文件

ACCOUNT STATUS

账户状态:LOCKED/UNLOCKED/EXPIRED

CONTAINER

ALL(公共用户)或 CURRENT(本地用户)

1.3、用户认证方式

1.3.1、数据库认证(Database Authentication)

最常见的认证方式,用户密码存储在数据库中(12c 默认区分大小写)。

-- 查看密码大小写敏感设置 SELECT name, value FROM v$parameter WHERE name = 'sec_case_sensitive_logon'; -- 修改密码 ALTER USER hr_user IDENTIFIED BY "NewP@ss2024" REPLACE "OldP@ss2023"; -- 锁定/解锁账户 ALTER USER hr_user ACCOUNT LOCK; ALTER USER hr_user ACCOUNT UNLOCK; -- 密码过期 ALTER USER hr_user PASSWORD EXPIRE;

1.3.2、操作系统认证(OS Authentication)

通过操作系统用户映射到数据库用户,常用于本地 DBA 管理。

-- 创建 OS 认证用户 CREATE USER ops$admin IDENTIFIED EXTERNALLY; -- 使用 OS 认证连接(无需输入密码) -- sqlplus /@orcl -- 12c+ 增强:支持区分大小写的 OS 用户名 ALTER SYSTEM SET os_authent_prefix = 'OPS$';

1.3.3、目录服务认证(LDAP/Kerberos)

企业级环境中常用的集中认证方式。

-- 配置 LDAP 认证(需先配置 ldap.ora) CREATE USER enterprise_user IDENTIFIED GLOBALLY AS 'CN=Enterprise User,OU=Users,DC=corp,DC=com'; -- 配置 Kerberos 认证 -- sqlnet.ora 配置: -- SQLNET.AUTHENTICATION_SERVICES = (KERBEROS5) -- SQLNET.KERBEROS5_CONF = /etc/krb5.conf -- SQLNET.KERBEROS5_REALM = CORP.COM -- SQLNET.KERBEROS5_CONF_MIT = TRUE CREATE USER kerberos_user IDENTIFIED GLOBALLY AS 'user@CORP.COM';

1.3.4、多因素认证(MFA)- 12c 新特性

Oracle 12c 开始支持与第三方 MFA 集成,如 RSA、Gemalto 等。

-- 配置 RADIUS 认证(用于 MFA 集成) -- sqlnet.ora 配置: -- SQLNET.AUTHENTICATION_SERVICES = (RADIUS) -- SQLNET.RADIUS_AUTHENTICATION = radius_server -- SQLNET.RADIUS_AUTHENTICATION_PORT = 1812 -- SQLNET.RADIUS_SECRET = /opt/oracle/radius_secret -- 创建 RADIUS 认证用户 CREATE USER mfa_user IDENTIFIED BY "InitP@ss" AUTHENTICATION USING 'radius';

实例:制造业用户生命周期管理体系

S — Situation(场景):某大型制造企业有 200+ 个数据库用户,分布在 Oracle 的 8 个 PDB 中。用户使用简单密码,频繁出现暴力破解事件,且离职员工账户未及时清理。

T — Task(任务):建立一套完整的用户生命周期管理机制,包含强密码策略、账户自动锁定、定期审计。

A — Action(行动):

1、创建统一的密码验证函数,要求最少12位、大小写+数字+特殊字符、不能包含用户名。

2、创建 Profile 绑定到所有用户,设置密码历史10次、失败5次锁定30分钟。

3、编写 PL/SQL 脚本自动识别90天未登录的账户并锁定。

4、集成企业 LDAP,实现统一身份管理。

5、建立月度用户审计报告机制。

R — Result(结果):密码暴力破解事件降至零,90天未活跃账户自动锁定覆盖率达100%,离职员工账户平均清理时间从7天缩短到当天,安全审计报告自动生成并邮件通知安全团队。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/16 14:31:25

OpenHarness:AI智能体真实场景评估框架的设计与实践

1. 项目概述:一个面向真实世界场景的AI智能体开发与评估框架最近在AI智能体这个圈子里,大家讨论的热点已经从“能不能跑起来”转向了“能不能在真实世界里用起来”。无论是想做一个能帮你自动处理邮件的助手,还是一个能分析复杂报表并给出决策…

作者头像 李华
网站建设 2026/5/16 14:20:04

Spring boot相关

1. ● 问题1:为什么扫描的是 com.example.demo 包?因为主入口类在这个包下。 com.example.demo …

作者头像 李华
网站建设 2026/5/16 14:15:07

Midscene.js:如何用AI视觉技术实现跨平台自动化测试的终极指南

Midscene.js:如何用AI视觉技术实现跨平台自动化测试的终极指南 【免费下载链接】midscene AI-powered, vision-driven UI automation for every platform. 项目地址: https://gitcode.com/GitHub_Trending/mid/midscene 在当今多平台应用爆炸式增长的时代&am…

作者头像 李华
网站建设 2026/5/16 14:13:31

明日方舟MAA助手:如何用5分钟自动化你的每日游戏任务

明日方舟MAA助手:如何用5分钟自动化你的每日游戏任务 【免费下载链接】MaaAssistantArknights 《明日方舟》小助手,全日常一键长草!| A one-click tool for the daily tasks of Arknights, supporting all clients. 项目地址: https://gitc…

作者头像 李华
网站建设 2026/5/16 14:10:02

3分钟搞定鼠标连点器:解放双手的自动化神器

3分钟搞定鼠标连点器:解放双手的自动化神器 【免费下载链接】MouseClick 🖱️ MouseClick 🖱️ 是一款功能强大的鼠标连点器和管理工具,采用 QT Widget 开发 ,具备跨平台兼容性 。软件界面美观 ,操作直观&a…

作者头像 李华