java - 如何使用 Javaconfig 在 Spring 应用程序中添加安全提供程序?

标签 java spring security bouncycastle spring-java-config

我正在尝试将 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/

相关文章:

java - 平台强制版本控制机制是 Java 最需要的特性吗?

Java:帮助构造 fillTextFields() 方法

java - 如何在 Go 中使用/实现切面方向?

Spring 3 构造函数 Autowiring - 为什么这段代码有效?

Java命令行编译不更新

java - Spring - 无法反序列化来自 HTTP 调用者远程服务的结果

java - 错误处理的 Spring MVC Rest 服务 Controller 正确吗?

c# - 如何确定全局键盘钩子(Hook)是否已断开连接?

facebook - 社交 SSO 在微服务架构中是什么样子的?

security - Mandrill Webhooks - 安全