【Oracle专栏】密码到期但在宽限期->修改密码

Oracle && OceanBase 相关文档,希望互相学习,共同进步

风123456789~-CSDN博客


1.背景

为了安全,用户配置了密码策略,密码90天有效期、30天宽限期、密码不能和上一次一样。如果需要在到期前修改密码,不影响业务的情况下,还需要密码和上一次一致。

即需求:密码策略生效 + 不改用户密码 + 保证用户有效期

2. 实验

2.1 基础知识

修改密码:

alter user nh_dw_aml identified by "xxx";

alter user nh_mcro_collect identified by "xxx";

alter user nh_mcro_basic identified by "xxx";

连接:

sqlplus ++++nh_dw_aml/xxx++++ ++++@++++ ++++127.0.0.1/++++ ++++orclpdb1++++

sqlplus nh_mcro_collect++++/++++ xxx++++@++++ ++++127.0.0.1/++++ ++++orclpdb1++++

sqlplus nh_mcro_basic++++/++++ xxx++++@++++ ++++127.0.0.1/++++ ++++orclpdb1++++
EXPIRED(GRACE) ‌:密码生命周期(PASSWORD_LIFE_TIME)已到期

但宽限时间(PASSWORD_GRACE_TIME)尚未结束

2.2 查看策略

1)查看用户状态

复制代码
--查看用户状态
column USERNAME format A15
column account_status format A15 
column lock_date format A15
column expiry_date format A15
col PROFILE format A30
col aa format A15
Set pagesize 50;
Set linesize 110;

SELECT t.USERNAME,T.account_status,T.lock_date,to_char(T.expiry_date,'yyyy-mm-dd') expiry_date,T.PROFILE,to_char(T.password_change_date,'yyyy-mm-dd')  aa                  
FROM dba_users t where username like 'NH%' order by 1;

2)查看指定策略

复制代码
---查看策略  pagesize 默认14
set linesize 100;                                                                                              
col RESOURCE_NAME for a30; 
col limit for a15;
col resource_type for a40;
Set pagesize 100;

SELECT t.resource_name,t.limit,t.resource_type FROM dba_profiles t WHERE profile='TAIY_SECURE_PROFILE'  order by 1;

3)查看默认策略

复制代码
---查看默认策略
SELECT t.resource_name,t.limit,t.resource_type FROM dba_profiles t WHERE profile='DEFAULT'  order by 1;

2.3 创建新用户+ 启用策略

create user nh_dw_cpl identified by "xxx" profile taiy_secure_profile;

grant connect to nh_dw_cpl;

grant resource to nh_dw_cpl;

2.4 修改策略

1)改默认策略密码到期为 unlimited,原 180天

此时,再看用户状态(用户到期时间没有了):

2)修改指定策略--密码到期(已到期的不管用)

复制代码
----修改指定策略,再看是否有到期时间(原来是90)
ALTER PROFILE TAIY_SECURE_PROFILE LIMIT PASSWORD_LIFE_TIME UNLIMITED;

--此时,再看用户状态(用户到期时间没有了) ,但是已经到期的 无法 去掉有效期

SELECT t.USERNAME,T.account_status,T.lock_date,to_char(T.expiry_date,'yyyy-mm-dd') expiry_date,T.PROFILE,to_char(T.password_change_date,'yyyy-mm-dd') aa

FROM dba_users t where username like 'NH%' order by 1;

已经到期的无法去掉有效期

-----恢复,再改回90天有效期

ALTER PROFILE TAIY_SECURE_PROFILE LIMIT PASSWORD_LIFE_TIME 90;

2.5 部分用户 改为默认策略

复制代码
--改用户归属为默认策略,然后修改密码和原来一致
ALTER USER nh_dw_aml PROFILE DEFAULT;
alter user nh_dw_aml identified by "xxxx";

--此时修改密码成功,因为指定策略中密码修改不能和上一次一样。

ALTER USER nh_mcro_collect PROFILE DEFAULT;
ALTER USER  nh_mcro_basic  PROFILE DEFAULT;
alter user nh_mcro_collect identified by "xxx";
alter user nh_mcro_basic identified by "xxx";

修改后,发现状态变了,有效期没有了,ok

此时,原有策略都没有变化

2.6 改回原有策略

复制代码
--下次再改回去  策略
ALTER USER nh_dw_aml PROFILE TAIY_SECURE_PROFILE;
ALTER USER nh_mcro_collect PROFILE TAIY_SECURE_PROFILE;
ALTER USER  nh_mcro_basic  PROFILE TAIY_SECURE_PROFILE;

执行测试后,发现 密码修改时间是今天,到期时间是今天后的3个月,ok

3.注意事项

1)已提示密码过期的用户,仍需修改一次密码 ‌ 才能恢复正常状态。

2)不需要重启 就ok

本节实验中,在2.5修改用户策略后,执行了修改密码,因此,在改回策略后,密码到期时间是往后顺延的。 LIMIT PASSWORD_LIFE_TIME 90,因此往后顺延3个月,今天是12月2日,顺延90天,就是2026年3月2日。

实验验证:ok


项目管理--相关知识

项目管理-项目绩效域1/2-CSDN博客

项目管理-项目绩效域1/2_八大绩效域和十大管理有什么联系-CSDN博客

项目管理-项目绩效域2/2_绩效域 团不策划-CSDN博客

高项-案例分析万能答案(作业分享)-CSDN博客

项目管理-计算题公式【复习】_项目管理进度计算题公式:乐观-CSDN博客

项目管理-配置管理与变更-CSDN博客

项目管理-项目管理科学基础-CSDN博客

项目管理-高级项目管理-CSDN博客

项目管理-相关知识(组织通用治理、组织通用管理、法律法规与标准规范)-CSDN博客


Oracle其他文档,希望互相学习,共同进步

Oracle-找回误删的表数据(LogMiner 挖掘日志)_oracle日志挖掘恢复数据-CSDN博客

oracle 跟踪文件--审计日志_oracle审计日志-CSDN博客

ORA-12899报错,遇到数据表某字段长度奇怪现象:"Oracle字符型,长度50"但length查却没有50_varchar(50) oracle 超出截断-CSDN博客

EXP-00091: Exporting questionable statistics.解决方案-CSDN博客

Oracle 更换监听端口-CSDN博客

相关推荐
岁岁种桃花儿7 小时前
MySQL从入门到精通系列:InnoDB记录存储结构
数据库·mysql
蜜獾云8 小时前
oracle查询所有的表名和注释
oracle
jiunian_cn8 小时前
【Redis】hash数据类型相关指令
数据库·redis·哈希算法
冉冰学姐8 小时前
SSM在线影评网站平台82ap4(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm框架·在线影评平台·影片分类
知识分享小能手9 小时前
SQL Server 2019入门学习教程,从入门到精通,SQL Server 2019数据库的操作(2)
数据库·学习·sqlserver
爬山算法10 小时前
Hibernate(84)如何在DevOps流程中使用Hibernate?
oracle·hibernate·devops
踩坑小念10 小时前
秒杀场景下如何处理redis扣除状态不一致问题
数据库·redis·分布式·缓存·秒杀
萧曵 丶11 小时前
MySQL 语句书写顺序与执行顺序对比速记表
数据库·mysql
Wiktok12 小时前
MySQL的常用数据类型
数据库·mysql
曹牧12 小时前
Oracle 表闪回(Flashback Table)
数据库·oracle