websphere 忘记控制台用户名或是添加删除控制台用户

在手动创建was的节点后默认是本地系统认证,即用任何的用户名都可以登录

 

如何取消was的控制台认证:

在was node的安装目录下面

$WAS_Profile_HOME\config\cells

有个安全文件security.xml

wasconsole

将其改为是false重新启动server

./stopServer server1

./startServer server1

再次访问既可以清除密码

也可以查找这个用户名和密码

 

也可以更改$WAS_Profile_HOME\config\cells\security.xml这个文件

将false改为是true

”<authDataEntries xmi:id=”JAASAuthData_1238489272531″ alias=”myNode01/oracleDBA” userId=”oraadmin” password=”{xor}bm1sa2pp”/>”,就是存放认证别名为oracleDBA的用户名和密码。

可以看到在这里密码被重新编码(encode)了,编码的方式是 XOR(eXclusive OR异或),很明显这种并不是一种强加密的算法,仅仅是一种编码而已,所以准确来说WebSphere为了避免密码被明文记录,只是很简单地“编码” (encode)而不是“加密”(encrypt)。

WebSphere采用的这 种只是编码而不是加密的存放密码形式,就帮助了你了。当然如果你想干坏事的话,WebSphere也算是给自己留下了一个“后门”了 -_-b。嘿嘿嘿,不要以为IBM那帮老爷子就是这么懒,如果阁下真的是要对存放在WebSphere配置文件里面的密码要加密的话(对于广大客户肯定是 有这个诉求的),其实IBM也提供了一种自定义加密算法的插件形式去解决这个问题的

 

WAS 6.0的编码:

> cd $WAS_INSTALL_DIR/lib

> ../java/bin/java -cp securityimpl.jar:iwsorb.jar::ras.jar:wsexception.jar:bootstrap.jar:emf.jar:ffdc.jar com.ibm.ws.security.util.PasswordEncoder 123456

WAS 6.0的反编码:

> cd $WAS_INSTALL_DIR/lib

> ../java/bin/java -cp securityimpl.jar:iwsorb.jar::ras.jar:wsexception.jar:bootstrap.jar:emf.jar:ffdc.jar com.ibm.ws.security.util.PasswordDecoder {xor}bm1sa2pp

WAS 6.1的编码:

> cd $WAS_INSTALL_DIR/bin\ProfileManagement\plugins\com.ibm.websphere.v61_6.1.200

> java -cp ws_runtime.jar com.ibm.ws.security.util.PasswordEncoder 123456

WAS 6.1的反编码:

> cd $WAS_INSTALL_DIR/bin\ProfileManagement\plugins\com.ibm.websphere.v61_6.1.200

> java -cp ws_runtime.jar com.ibm.ws.security.util.PasswordDecoder {xor}bm1sa2pp

 

添加was的控制台认证

在控制台中添加认证

添加联合存储库进行设置

添加用户名和密码

重启server既可以

也可以选择本地的系统用户,这是我们需要在

本地的系统上面添加用户组和相应的用户名

groupadd -g 1002 wasadmin

useradd -g wasadmin wasadmin

passwd wasadmin设置密码

在上面选择联合存储库的时候我们选择本地的系统,

添加相应的组和角色

重新启动,再次访问即可。