第 4 章 如何在 Spring Boot 中使用加密属性占位符
在保护容器时,不建议在配置文件中使用纯文本密码。避免使用纯文本密码的一种方法是尽可能使用加密属性占位符。
4.1. 关于用于加密值的 master 密码 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
要使用 Jasypt 加密值,需要一个 master 密码。供您或管理员选择 master 密码。Jasypt 提供了多种方式来设置 master 密码。Jasypt 可以集成到 Spring 配置框架中,以便在加载配置文件时解密属性值。其中一种方法是在 Spring 引导配置中以纯文本形式指定 master 密码。
Spring 使用 PropertyPlaceholder
框架将令牌替换为属性文件中的值,Jasypt 的方法将 PropertyPlaceholderConfigurer
类替换为可识别加密字符串并解密它们的方法。
示例
您可以使用环境变量来设置 master 密码,而不是以纯文本形式指定 master 密码。在 Spring Boot 配置文件中,将这个环境变量指定为 passwordEnvName
属性的值。例如,如果您将 MASTER_PW
环境变量设置为 master 密码,则 Spring Boot 配置文件中会具有此条目:
<property name="passwordEnvName" value="MASTER_PW">
<property name="passwordEnvName" value="MASTER_PW">