我正在尝试更改Oracle DB用户的密码,但出现以下错误:
ORA-28003: password verification for the specified password
ORA-20002: YOU ARE NOT ALLOWED TO CHANGE THE PASSWORD FOR CRITICAL SCHEMAS
我尝试使用sys用户更改密码,并遇到相同的错误。资料库版本:12.2.0.1.0客户端:SQLPlus
请帮助
通过配置文件分配给用户的密码验证功能引发了异常。
您可以通过查询查看配置文件名称和所应用的功能:
select du.profile, dp.limit
from dba_users du
join dba_profiles dp on dp.profile = du.profile
where du.username = '<YOUR_USER>'
and dp.resource_name = 'PASSWORD_VERIFY_FUNCTION';
然后您可以使用上一个查询中标识的名称,通过查看源代码来查看函数的实际作用:
select text
from dba_source
where owner = 'SYS'
and name = '<FUNCTION_NAME>'
order by line;
[通过查找类似这样的行,您可以从那里看到发生的时间和原因:
raise_application_error(-20002, 'YOU ARE NOT ALLOWED TO CHANGE THE PASSWORD FOR CRITICAL SCHEMAS');
并查看导致其引发的逻辑。
[您需要确定该规则是否仍然适用于该用户-显然,该规则的存在是有原因的,因此在没有真正理解该规则的情况下,请勿删除该规则或更改该用户的个人资料,并与DBA和/或与之讨论应用程序所有者等-基本上是对该用户帐户感兴趣的任何人。