我正在创建一个Spring客户端的Spring MVC应用程序。要与SOAP Web服务进行通信,我想要传递登录凭据。我的应用程序不需要动态存储任何细节,因此我没有为此应用程序使用任何数据库。所以请建议您为我的应用程序存储敏感凭据。该凭证将由系统管理员管理,并且必须易于根据要求进行更改。
提前致谢。
答案 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>
然后,系统管理员还可以独立于构建更改用户名/密码。
答案 1 :(得分:2)
最简单的选择是将它们存储在应用程序上下文XML配置文件中,作为与SOAP Web服务进行通信的bean的属性。