0

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

提前致谢。

4

2 回答 2

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/

于 2012-08-16T12:23:24.783 回答
2

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

于 2012-08-16T12:18:02.003 回答