Oracle 设置密码有效期

本文介绍了如何在Oracle数据库中查询用户密码的过期日期,通过`dba_users`和`dba_profiles`表进行操作。还展示了如何将密码设置为永不自动过期和指定180天过期的命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、oracle查询数据库密码哪一天过期

select username,account_status,expiry_date,profile from dba_users;

其中expiry_date即是过期的时间

2、查询数据库密码有效期

select * from dba_profiles s where s.profile='DEFAULT' and resource_name='PASSWORD_LIFE_TIME';

3、修改数据库密码永不过期

alter profile default limit password_life_time unlimited;

4、修改数据库密码180天过期

alter profile default limit password_life_time 180;

### 查询 Oracle 数据库中当前用户的密码有效期 要查询 Oracle 数据库中某个用户或当前用户的密码有效期设置,可以通过 `dba_users` 和 `db profiles` 视图来获取相关信息。 以下是具体方法: #### 使用视图查询密码有效期 可以利用 `DBA_USERS` 视图中的字段 `EXPIRY_DATE` 来查看账户的过期日期。此字段表示该账户何时会因密码策略而失效。如果未启用密码生命周期管理,则此值可能为空或者显示为无限远的时间[^2]。 ```sql SELECT username, account_status, expiry_date, profile FROM dba_users WHERE username = 'YOUR_USERNAME'; ``` 上述 SQL 语句返回的结果中: - **username**: 账户名称。 - **account_status**: 当前账户的状态(如 OPEN、LOCKED 等)。 - **expiry_date**: 密码的有效截止时间。 - **profile**: 关联到该用户的配置文件名。 #### 配置文件影响密码有效期 Oracle 中的密码有效期由用户所属的 Profile 定义决定。通过以下命令可进一步了解指定 Profile 的密码寿命限制: ```sql SELECT * FROM DBA_PROFILES WHERE PROFILE='DEFAULT' AND RESOURCE_NAME='PASSWORD_LIFE_TIME'; ``` 这里需要注意的是,默认情况下,Profile 可能被设定为限制密码生命期限 (`UNLIMITED`) 或者特定天数。例如,在默认 Profile 下执行如下操作即可调整全局范围内的新创建用户的行为模式[^1]: ```sql ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME 90; -- 上述例子将所有基于 Default Profil 创建的新帐户设定了九十日更替周期。 ``` 因此,当需要确切知道某位成员其个人资料里关于此项参数的具体数值时,应该查阅对应记录表单内容并加以分析比较得出结论。 ### 注意事项 对于已经存在的老用户来说,即使修改了 Profile 的 Password Life Time 参数,也会自动应用至这些旧有实体上;而是仅适用于之后新增加进去的对象实例之中去生效而已。 若要让现有用户也遵循新的规则,则需单独针对他们重新定义属性才行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值