wss4j+xfire+spring 学习总结三(密钥生成和配置)

1、首先通过脚本dragon.bat生成需要的密钥文件:

[code]

@echo off
if "%JAVA_HOME%" == "" goto error
@echo on
@echo off
cls
REM (1.注释:指定使用RSA算法,生成别名为ws_security的证书,产生一个新的公共/私有钥匙对)
keytool -genkey -keyalg RSA -alias guosy -dname "cn=localhost" -validity 180 -keystore privatestore.jks -storepass dragon -

keypass dragon2

REM (2.注释:自签名证书,好玩不要也正常)
keytool -selfcert -alias guosy -keystore privatestore.jks -dname "CN=liaowu, OU=org, O=org, L=area, ST=state, C=cn" -

storepass dragon -keypass dragon2

REM (3.注释:导出别名为ws_security证书的公钥到key.crt(将包含上一步自签名的信息),包含证书主体的信息及证书的公钥,不包括私

钥,可以公开)
keytool -export -alias guosy -file key.crt -keystore privatestore.jks -storepass dragon

REM (4.注释:生成公钥)
keytool -import -alias guosy -file key.crt -keystore publicstore.jks -storepass dragon
pause

:error
echo 请先设置JAVA_HOME环境变量
:end

[/code]

共生成3个文件,我们暂时使用两个文件:privatestore.jks(服务器端)、publicstore.jks(客户端)

这个两个文件在之前的配置文件中已经配置过,把文件放在对应的位置上;另外服务器端和客户端各需要一个配置文件:

服务器的配置文件:insecurity_enc.properties

[code]

org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
org.apache.ws.security.crypto.merlin.keystore.type=jks

org.apache.ws.security.crypto.merlin.keystore.password=dragon
org.apache.ws.security.crypto.merlin.alias.password=dragon2
org.apache.ws.security.crypto.merlin.keystore.alias=guosy
org.apache.ws.security.crypto.merlin.file=jks/server/privatestore.jks

[/code]

客户端配置文件:outsecurity_enc.properties

[code]

org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
org.apache.ws.security.crypto.merlin.keystore.type=jks

org.apache.ws.security.crypto.merlin.keystore.password=dragon
org.apache.ws.security.crypto.merlin.alias.password=dragon2
org.apache.ws.security.crypto.merlin.keystore.alias=guosy
org.apache.ws.security.crypto.merlin.file=jks/client/publicstore.jks

[/code]

注意:很多的教程获取只给出以上的代码就完成了,完全不会管你按照教程做了以后能不能运行成功,所以我现在给出终极的注意事项,因为没有完成这些事的话,根本就不能运行,我之前在csdn下了个实例,擦,下了以后根本运行不了,放在myecilpse里都报错!上我的心啊,还要了我十分,悲剧!注意事项放下页吧,这页东西太多了。

你可能感兴趣的:(spring,security,服务器,java,脚本,算法)