在spring MVC中存储用户凭据的推荐方法是什么?

时间:2012-08-16 12:13:55

标签: java spring java-ee spring-mvc spring-security

我正在创建一个Spring客户端的Spring MVC应用程序。要与SOAP Web服务进行通信,我想要传递登录凭据。我的应用程序不需要动态存储任何细节,因此我没有为此应用程序使用任何数据库。所以请建议您为我的应用程序存储敏感凭据。该凭证将由系统管理员管理,并且必须易于根据要求进行更改。

提前致谢。

2 个答案:

答案 0 :(得分:3)

将用户名和密码存储在webapp spring上下文外部的属性文件中。这样,系统管理员可以轻松地将属性文件的读取访问权限锁定到相关方(例如您的应用程序和他自己)。这应该不会让人看到密码。

在你的春天里面有类似的东西:

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
  <property name="location">
    <list>
      <value>/path/to/config.properties</value>
    </list>
  </property>
  <property name="ignoreUnresolvablePlaceholders" value="true"/>
</bean>

<bean id="myBean" class="...">
    <property name="username" value="{usernameFromExternalPropFile}" />
    <property name="password" value="{passwordFromExternalPropFile}" />
</bean>

然后,系统管理员还可以独立于构建更改用户名/密码。

请参阅http://www.javaworld.com/community/node/8309/

答案 1 :(得分:2)

最简单的选择是将它们存储在应用程序上下文XML配置文件中,作为与SOAP Web服务进行通信的bean的属性。