You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users-cn@cloudstack.apache.org by evanitsharp <ev...@gmail.com> on 2013/11/14 01:54:42 UTC

有关apikey和secretkey的问题,请帮忙解决

CloudStack4.0.2中直接从数据库读取的SecretKey和调用API(listUsers)获取的为什么不一样呢? 




evanitsharp

Re: 有关apikey和secretkey的问题,请帮忙解决

Posted by Du Jun <dj...@gmail.com>.
Approval!


在 2013年11月14日下午2:55,Wei ZHOU <us...@gmail.com>写道:

> 数据库里面的值是用dbkey加密的。可以这样来解密
> java -classpath /usr/share/cloudstack-common/lib/jasypt-1.9.0.jar
> org.jasypt.intf.cli.JasyptPBEStringDecryptionCLI decrypt.sh
> password="(dbkey)" input="(secretkey in db)"
>
> 如果不记得dbkey,可以用management key(/etc/cloudstack/management/key)来解密
> java -classpath /usr/share/cloudstack-common/lib/jasypt-1.9.0.jar
> org.jasypt.intf.cli.JasyptPBEStringDecryptionCLI decrypt.sh
> password="(mgtkey)" input="(db.cloud.encrypt.secret in db.properties)"
>
>
> cloudstack使用的是PBEWithMD5AndDES进行加密解密,所以不是一定要用java命令行,各种编程语言都有对应的加密解密函数。
>
>
>
> 在 2013年11月14日上午1:54,evanitsharp <ev...@gmail.com>写道:
>
> > CloudStack4.0.2中直接从数据库读取的SecretKey和调用API(listUsers)获取的为什么不一样呢?
> >
> >
> >
> >
> > evanitsharp
>

回复: Re: 有关apikey和secretkey的问题,请帮忙解决

Posted by evanitsharp <ev...@gmail.com>.
谢谢各位,问题已解决^ ^




evanitsharp

发件人: Wei ZHOU
发送时间: 2013-11-14 14:55
收件人: users-cn; evanitsharp
主题: Re: 有关apikey和secretkey的问题,请帮忙解决
数据库里面的值是用dbkey加密的。可以这样来解密
java -classpath /usr/share/cloudstack-common/lib/jasypt-1.9.0.jar org.jasypt.intf.cli.JasyptPBEStringDecryptionCLI decrypt.sh password="(dbkey)" input="(secretkey in db)"

如果不记得dbkey,可以用management key(/etc/cloudstack/management/key)来解密
java -classpath /usr/share/cloudstack-common/lib/jasypt-1.9.0.jar org.jasypt.intf.cli.JasyptPBEStringDecryptionCLI decrypt.sh password="(mgtkey)" input="(db.cloud.encrypt.secret in db.properties)"


cloudstack使用的是PBEWithMD5AndDES进行加密解密,所以不是一定要用java命令行,各种编程语言都有对应的加密解密函数。


 
在 2013年11月14日上午1:54,evanitsharp <ev...@gmail.com>写道:

CloudStack4.0.2中直接从数据库读取的SecretKey和调用API(listUsers)获取的为什么不一样呢?




evanitsharp

Re: 有关apikey和secretkey的问题,请帮忙解决

Posted by Wei ZHOU <us...@gmail.com>.
数据库里面的值是用dbkey加密的。可以这样来解密
java -classpath /usr/share/cloudstack-common/lib/jasypt-1.9.0.jar
org.jasypt.intf.cli.JasyptPBEStringDecryptionCLI decrypt.sh
password="(dbkey)" input="(secretkey in db)"

如果不记得dbkey,可以用management key(/etc/cloudstack/management/key)来解密
java -classpath /usr/share/cloudstack-common/lib/jasypt-1.9.0.jar
org.jasypt.intf.cli.JasyptPBEStringDecryptionCLI decrypt.sh
password="(mgtkey)" input="(db.cloud.encrypt.secret in db.properties)"


cloudstack使用的是PBEWithMD5AndDES进行加密解密,所以不是一定要用java命令行,各种编程语言都有对应的加密解密函数。



在 2013年11月14日上午1:54,evanitsharp <ev...@gmail.com>写道:

> CloudStack4.0.2中直接从数据库读取的SecretKey和调用API(listUsers)获取的为什么不一样呢?
>
>
>
>
> evanitsharp

回复: Re: 有关apikey和secretkey的问题,请帮忙解决

Posted by evanitsharp <ev...@gmail.com>.
当然是利用SQL查询获取的。

有人说数据库里存的secretkey是经过编码的,而且我也往这方面想过。只是通过追踪源代码的执行,我没能找到具体的源码位置,因为也就不能确定到底是通过什么方法进行编解码的




evanitsharp

发件人: 刘洋
发送时间: 2013-11-14 11:50
收件人: users-cn; evanitsharp
主题: Re:回复: Re: 有关apikey和secretkey的问题,请帮忙解决
数据库是怎么获取的?





在 2013-11-14 10:38:17,evanitsharp <ev...@gmail.com> 写道:
>数据库获取的是:rS/gpVn9SvbhVjjFBtC2zo0Ue2pYTvgaf24gyIzzC4r4LXNxm7djo5desZMsBoPtfH0fVsJw9yq5NYpRgAAiXlZdiY9q4zEL5tjB+yE50p2EQSkLJ6KqsojrQ+uOMrwj 
>调用API获取的是:2hjBSbXyOzUJ495PbSN1M4eM-ppYd9z3sKnJxUMEVovLHwJ9MVtg6bmriB1IVaMx213UFgtYkfs-v7s4s1WIDA 
>
>
>
>
>evanitsharp
>
>发件人: Du Jun
>发送时间: 2013-11-14 09:44
>收件人: users-cn; evanitsharp
>主题: Re: 有关apikey和secretkey的问题,请帮忙解决
>从数据库读取的SecretKey是什么?
>调用API获取的又是什么?
>
>
>
>在 2013年11月14日上午8:54,evanitsharp <ev...@gmail.com>写道:
>
>CloudStack4.0.2中直接从数据库读取的SecretKey和调用API(listUsers)获取的为什么不一样呢?
>
>
>
>
>evanitsharp

Re:回复: Re: 有关apikey和secretkey的问题,请帮忙解决

Posted by 刘洋 <13...@163.com>.
数据库是怎么获取的?






在 2013-11-14 10:38:17,evanitsharp <ev...@gmail.com> 写道:
>数据库获取的是:rS/gpVn9SvbhVjjFBtC2zo0Ue2pYTvgaf24gyIzzC4r4LXNxm7djo5desZMsBoPtfH0fVsJw9yq5NYpRgAAiXlZdiY9q4zEL5tjB+yE50p2EQSkLJ6KqsojrQ+uOMrwj 
>调用API获取的是:2hjBSbXyOzUJ495PbSN1M4eM-ppYd9z3sKnJxUMEVovLHwJ9MVtg6bmriB1IVaMx213UFgtYkfs-v7s4s1WIDA 
>
>
>
>
>evanitsharp
>
>发件人: Du Jun
>发送时间: 2013-11-14 09:44
>收件人: users-cn; evanitsharp
>主题: Re: 有关apikey和secretkey的问题,请帮忙解决
>从数据库读取的SecretKey是什么?
>调用API获取的又是什么?
>
>
>
>在 2013年11月14日上午8:54,evanitsharp <ev...@gmail.com>写道:
>
>CloudStack4.0.2中直接从数据库读取的SecretKey和调用API(listUsers)获取的为什么不一样呢?
>
>
>
>
>evanitsharp

回复: Re: 有关apikey和secretkey的问题,请帮忙解决

Posted by evanitsharp <ev...@gmail.com>.
数据库获取的是:rS/gpVn9SvbhVjjFBtC2zo0Ue2pYTvgaf24gyIzzC4r4LXNxm7djo5desZMsBoPtfH0fVsJw9yq5NYpRgAAiXlZdiY9q4zEL5tjB+yE50p2EQSkLJ6KqsojrQ+uOMrwj 
调用API获取的是:2hjBSbXyOzUJ495PbSN1M4eM-ppYd9z3sKnJxUMEVovLHwJ9MVtg6bmriB1IVaMx213UFgtYkfs-v7s4s1WIDA 




evanitsharp

发件人: Du Jun
发送时间: 2013-11-14 09:44
收件人: users-cn; evanitsharp
主题: Re: 有关apikey和secretkey的问题,请帮忙解决
从数据库读取的SecretKey是什么?
调用API获取的又是什么?



在 2013年11月14日上午8:54,evanitsharp <ev...@gmail.com>写道:

CloudStack4.0.2中直接从数据库读取的SecretKey和调用API(listUsers)获取的为什么不一样呢?




evanitsharp

Re: 有关apikey和secretkey的问题,请帮忙解决

Posted by Du Jun <dj...@gmail.com>.
从数据库读取的SecretKey是什么?
调用API获取的又是什么?


在 2013年11月14日上午8:54,evanitsharp <ev...@gmail.com>写道:

> CloudStack4.0.2中直接从数据库读取的SecretKey和调用API(listUsers)获取的为什么不一样呢?
>
>
>
>
> evanitsharp