我正在尝试将 BouncyCaSTLe 添加到我的 Spring 应用程序,但我不确定如何使用 JavaConfig 将提供程序添加到 java.security.Security
提供程序列表。
使用 XML 配置,我可以像下面这样使用 MethodInvokingFactoryBean
:
<bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
<property name="staticMethod" value="java.security.Security.addProvider"/>
<property name="arguments">
<list>
<bean class="org.bouncycastle.jce.provider.BouncyCastleProvider"/>
</list>
</property>
</bean>
但是,我不确定使用 JavaConfig 执行此操作的正确方法。我是否仍应使用 MethodInvokingFactoryBean
?我想因为它是纯 Java,所以会有更直接的方法。目前,我已将该指令添加到 JavaConfig 对象中的 @PostConstruct
方法,但对此并不太兴奋——对我来说这似乎有点“hacky”:
@Configuration
public class AppConfig {
// other @Bean definitions
@PostConstruct
public void init(){
Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());
}
}
最佳答案
MethodInvokingBean
将是将 BouncyCaSTLeProvider
添加到 java.security.Security
的实际选择,因为您不需要任何暴露应用上下文。
关于java - 如何使用 Javaconfig 在 Spring 应用程序中添加安全提供程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24703857/