这更像是一个概念问题。我是一个监控团队,我们目前正在开始监视Oracle数据库。该公司要求每90天更新一次密码。我们需要监控1000 s的数据库,而不想每90天进入所有数据库并更改密码。
自动化这个过程的最好方法是什么?我想写一个python脚本来连接数据库,然后更新密码;我对oracle知之甚少,这可能吗?有什么工具可以做这样的事情吗?
寻找一些关于如何自动化此过程的首选方法或建议。
谢谢
发布于 2017-09-16 07:19:12
您的需求不清楚,无法帮助探索更好的解决方案。
区块报价
我正在考虑写一个python脚本来连接到数据库,然后更新密码。
区块报价
这是有效的,如果您知道现有的密码(或具有DBA访问权限),那么在循环中仍然可以这样做,假设您要将所有密码更新为相同的密码,或者有一种使用预定义模式生成密码的方法:命令要更改密码:
alter user <username> identified by <password>一旦您可以连接到用户或sys,就可以在循环中使用python或任何脚本语言。
发布于 2017-09-15 16:50:23
首先,您可以查看用户帐户的情况,如下所示:
SELECT username, user_id, account_status, expiry_date
FROM dba_users ;例如:
USERNAME USER_ID ACCOUNT_STATUS LOCK_DATE EXPIRY_DATE CREATED
A 1 OPEN [NULL] 12/28/03 09/29/03
B 2 OPEN [NULL] 04/19/04 01/20/04
C 3 EXPIRED [NULL] 06/22/04 06/26/01您可以按以下方式更改用户:
ALTER USER test VALID UNTIL 'Jan 31 2020';例如,Oracle将要求过期用户在登录时通过SLQ Developer或蟾蜍重置密码。
最后,请确保根据需要设置用户配置文件:
select * FROM dba_profiles例如:
select * FROM dbA_profiles where profile = ‘DEFAULT’;
PROFILE RESOURCE_NAME RESOURCE LIMIT
—————————— ——————————– ——– —————————————-
..
DEFAULT PASSWORD_LIFE_TIME PASSWORD UNLIMITED最后,要更改用户配置文件:
alter user SCOTT profile APPLICATIONS;请不要犹豫,向我要更多澄清。
泰德
https://stackoverflow.com/questions/46244200
复制相似问题