看一下Jasypt,它是一个Java库,允许开发人员以最小的努力将基本的加密功能添加到他/她的项目中,而无需对密码如何工作有深入的了解。
如果您使用Spring,则可以将您定义
db.properties为:
jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost/yourdb jdbc.username=userName jdbc.password=ENC(A6L729KukPEx7Ps8didIUWb01fdBRh7d)
并使用Jasypt和Spring将其配置为:
<bean > <constructor-arg> <bean > <property name="config"> <bean ><property name="algorithm" value="PBEWithMD5AndDES" /><property name="passwordEnvName" value="APP_ENCRYPTION_PASSWORD" /> </bean> </property> </bean> </constructor-arg> <property name="locations"> <list> <value>classpath:/meta-INF/props/db/db.properties</value> </list> </property> </bean><bean id="dataSource" > <property name="driverClassName" value="${jdbc.driverClassName}"/> <property name="url" value="${jdbc.url}"/> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/></bean>
这将向学生隐藏实际的密码(您可以对进行相同的 *** 作
username),因此他们将无法通过查看属性文件来获得连接字符串。
如果您不使用Spring,这是Jasypt指南,可以“手动”实现相同的功能
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)