龙空技术网

Weblogic控制台数据源密码的脚本化修改

zhengzai7 3

前言:

当前朋友们对“服务器开机密码忘记了怎么修改密码”大致比较关怀,看官们都需要了解一些“服务器开机密码忘记了怎么修改密码”的相关文章。那么小编同时在网上收集了一些有关“服务器开机密码忘记了怎么修改密码””的相关内容,希望你们能喜欢,我们快快来了解一下吧!

第一章、修改Weblogic控制台密码第1节、涉及密码配置文件

AdminServer/boot.properties

password

受管服务器/boot.properties

password

域目录/config/config.xml

<node-manager-username>标签

域目录/security/DefaultAuthenticatorInit.ldift

密码文件

AdminServer/data/ldap

密码缓存

守管服务器/boot.properties/ldap

密码缓存

第2节、脚本化修改步骤

(1)修改boot.properties

username=用户名password=明文密码

(2)对明文加密

java -cp /weblogic目录/wlserver/server/lib/weblogic.jar web logic.security.Encrypt password

(3)用加密明文修改config.xml

<node-manaer-username>aes256加密的password</node-manaer-username>

(4)执行密码生效

cd 域目录/security/java -cp /weblogic目录/wlserver/server/lib/weblogic.jar weblogic.security.utils.AdminAccount weblogic password

(5)处理缓存密码,修改data目录名称

cd /域目录/servers/AdminServer/mv data olddatacd /域目录/servers/应用Server/mv data olddata

(6)重启Weblogic管理及受管服务器

sh startWeblogic.shsh start应用启动脚本.sh
第3节、示例完整脚本
read -p "输入新密码:" newpasswordread -r -p "确认修改吗? [Y/n] " inputcase $input in    [yY] | [yY])        echo "yes"        # 修改boot.properties        sed -i "/^username=*/cusername=weblogic用户名" /boot.properties目录        sed -i "/^password=*/cpassword=weblogic密码" /boot.properties目录        # 加密        password=$(java -cp /weblogic目录/weblogic.jar weblogic.security.Encrypt $newpasword)        # 找到config.xml密码配置航        line=$(grep -n "<node-manager-password-encrypted>" config.xml文件目录 | cut -d ":" -f 1)        # 用sed替换        sed ''$line' c\<node-manager-password-encrypted> '$password'</node-manager-password-encrypted>' config.xml文件目录        # 执行密码生效        cd /weblogic域目录/security/        # 可以先备份.ldif文件        # java -cp /weblogic目录/wlserver/server/lib/we logic.jar weblogic.security.utils.AdminAccount weblogic password .        # 修改缓存密码        cd /域目录/AdminServer/        mv data old_data        cd /域目录/受管Server/        mv data old_data     ;;  [nN] | [nN])     echo "No"     ;;  *)    echo "Invalid input"    exit    ;;esac
第二章、修改Weblogic控制台密码第1节、涉及配置文件

受管Server/data/ldap

密码缓存

域目录/config/jdbc/JDBC-....xml

数据源密码配置文件

第2节、修改步骤

(1)对明文加密

java -cp /weblogic目录/wlserver/server/lib/weblogic.jar web logic.security.Encrypt password

(2)用明文密码修改配置文件

<password-encripted>aes256加密后的password</password-encripted>

(3)执行密码生效

cd 域目录/security/java -cp /weblogic目录/wlserver/server/lib/weblogic.jar weblogic.security.utils.AdminAccount weblogic password .

(4)处理缓存密码,修改data目录名称

cd /域目录/servers/应用Server/mv data olddata

(5)重启Weblogic受管服务器

sh start应用启动脚本.sh
第3节、示例完整脚本

参照上一节。

第三章、Weblogic密码解密第1节、释义

weblogic加解密必须在域环境下进行。

相同的明文密码在相同的域环境下加密结果不一致。

相同的密文在不同的域环境下解密也不一致,甚至有的则无法解密。

域目录即domains的下一层由您个性化命名的目录。

第2节、Weblogic解密2.1、手工步骤

进入wlst.sh所在目录

cd <MIDDLEWARE_HOME>/oracle_common/common/binsh west.sh

设置如下参数:

domain="域目录"service=weblogic.security.internal.SerializedSystemIni.getEncryptionService(domain)encryption=weblogic.security.internal.encryption.ClearOrEncryptedService(service)

这里的“域目录”是您首管服务器的域目录。

然后

执行解密命令:

print "您的weblogic密码是:%s" %encryption.decrypt("{AES}sssss")

执行加密命令:

print "您的weblogic密码是:%s" %encryption.encrypt("password")
2.2、脚本化解密

(1)要脚本化解密,需要先编写python脚本来调用wlst.sh的方法

decrypt.py如下

import osimport weblogic.security.internal.SerializedSystemIniimport weblogic.security.internal.encryption.ClearOrEncryptedServicedef decrypt(password):    domainpath="域目录"		service=weblogic.security.internal.SerializedSystemIni.getEncryptionService(domain)		encryption=weblogic.security.internal.encryption.ClearOrEncryptedService(service)		password=ces.decrypt(password)    print passwordtry:    if len(sys.argv)==2:        decrypt(sys.argv[1])    else:        print "error"exception:    print "exception"

(2)再使用该脚本进行解密

java -cp /weblogic目录/wlserver/server/lib/weblogic.jar weblogic.WLST decrypt.py "{AES}sssssss"

标签: #服务器开机密码忘记了怎么修改密码 #c语言英文字母替换加密