在fuse-esb中添加bouncycastle提供程序



我的应用程序中运行在fuse esb内的osgi捆绑包需要bouncycastle提供的pgp加密。Bouncycastle提供程序不应影响其他应用程序捆绑包/fuse esb功能。既然bouncycastle不是OSGI jar,那么如何将其添加到fuse ESB环境中呢?

我将bouncycastle罐子重新打包为OSGI罐子,但它给出了签名错误。我将jar复制到JDK安全目录,但我的应用程序捆绑包并没有开始说找不到bouncycastle类。与复制到karaf外部库目录相同。

您没有指定Fuse ESB(当时称为JBoss Fuse,现在称为Red Hat Fuse(的版本。我用的是保险丝7.6。

我检查了一个琐碎的pgp示例,所需要的只是将bcpg-jdk15on-164.jar添加到$FUSE_HOME/lib/ext——这个目录已经包含了bcpkixbcprov库。然而,bcpg库提供了对OpenPGP的支持。

从OSGi的角度来看,您只需要适当的导入(或动态导入(。无需安装任何捆绑包,因为一切都在$FUSE_HOME/etc/config.properties:中配置

org.osgi.framework.bootdelegation = 
...
sun.*, 
org.bouncycastle, 
org.bouncycastle.*, 
...

如果您使用的是JBoss Fuse 6.x,那也是一样的。仅$FUSE_HOME/lib/ext包含bcprov-jdk15on.jar

1(将bouncycastle jar文件添加到lib/ext

2( 将bouncycastle包添加到etc/config.properties中的bootdelegation(如上第一个答案(

3( 从maven捆绑包插件的导入部分显式删除bouncycastle包

<Import-Package>
!org.bouncycastle.jce.*,
!org.bouncycastle.bcpg.*,
!org.bouncycastle.openpgp.*,
!org.bouncycastle.openpgp.operator.*,
!org.bouncycastle.openpgp.operator.bc.*,
!org.bouncycastle.openpgp.operator.jcajce.*,
*
</Import-Package>

4( 在动态导入部分中导入这些包

相关内容

  • 没有找到相关文章

最新更新