Python是否可以更新Oracle SQL Developer连接的密码

Can Python update Passwords for Oracle SQL Developer Connections

我的Python脚本使用以下命令定期更新Oracle密码
"new_password"标识的alter user my_user替换"old_password"
现在,我需要在SQL Developer connection definitions中更新这些密码。我在Windows 7机器上四处查看,但是找不到Connections.xmlIDEConnections.xml。如果是这样,密码将被加密。

任何人都可以为SQL Developer自动更新密码吗?


该文件称为connections.xml,在Windows上位于:

1
2
"%appdata%\
oaming\\SQL Developer\\system<some-numbers>\\o.jdeveloper.db.connection.<some-other-numbers>\\connections.xml"

例如:

1
2
C:\\Users\\XXX\\AppData\
oaming\\SQL Developer\\system3.2.20.09.87\\o.jdeveloper.db.connection.11.1.1.4.37.59.48\\connections.xml

您将在其中找到这样的实体:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<Reference name="XXXXXXX" className="oracle.jdeveloper.db.adapter.DatabaseProvider" xmlns="">
  <Factory className="oracle.jdeveloper.db.adapter.DatabaseProviderFactory"/>
  <RefAddresses>
    ...
    <StringRefAddr addrType="ConnName">
        <Contents>MY DATABASE</Contents>
     </StringRefAddr>
     <StringRefAddr addrType="customUrl">
        <Contents>jdbc:oracle:thin:@xxx.xxx.xxx.xxx:1521:service_name</Contents>
     </StringRefAddr>
     <StringRefAddr addrType="password">
        <Contents>0540C826BDC964bFF7C1E309587AAA35D53B34ACAC8A595A52</Contents>
     </StringRefAddr>
  </RefAddresses>

哈希是DES密码-这里有一些示例:https://stackoverflow.com/a/18021526/9655177。这是一个解密示例,但是您可以将其反转。


Robertus的帖子向我指出了相关配置文件的正确位置;但是,密码加密尚未解决。重新打开一个新问题。