• springboot的配置项ENC加解密


           在web项目中我们看到application文件中很多出现配置项是ENC(xxxxx),这就表示xxx这个参数是经过加密之后的结果。

            我们想要在其他地方使用参数必须要做解密。以下是实现方法。

    加解密的实现依赖jasypt。所以需要引入以下jar包

    
        org.jasypt
        jasypt
        1.9.3
    

    加解密方法 

    1. package com.spring.demo.demo_3_enc;
    2. import org.jasypt.encryption.pbe.StandardPBEStringEncryptor;
    3. public class EncTest {
    4. public static void main(String[] args) {
    5. String password = "mySecretPassword";
    6. StandardPBEStringEncryptor encryptor = new StandardPBEStringEncryptor();
    7. encryptor.setPassword(password);
    8. String encryptedText = encryptor.encrypt("12345676879876543");
    9. System.out.println("Encrypted Text: " + encryptedText);
    10. String decryptedText = encryptor.decrypt(encryptedText);
    11. System.out.println("Decrypted Text: " + decryptedText);
    12. }
    13. }

    其中 password是必须提供的参数。这个参数会在application配置文件中包含。你可以在application.properties或application.yml文件中设置该属性:

    jasypt.encryptor.password=mySecretPassword

    jasypt:
      encryptor:
        password: mySecretPassword 

    如果在application配置文件没有,则可能是在启动的java项目的命令中加如了这个参数 ,如以下:

    /opt/java/jdk8/bin/java -jar -Xmx512m -Xms512m  -Djasypt.encryptor.password=mySecretPassword  -Dspring.profiles.active=dev /home/xxxx/test-demo.jar

    - Djasypt.encryptor.password就是配置 jasypt.encryptor.password 参数的。

  • 相关阅读:
    Maven 安装配置
    用二叉树或栈求表达式的值--代码实现+算法分析
    短信登录实现(黑马点评为例)
    java生成excel,uniapp微信小程序接收excel并打开
    正式练习的第一个Python功能:加法计算
    在线博客系统——ThreadLocal详解
    js获取音频时长
    Lampiao
    《Effective C++》条款23
    ElasticSearch 查询方法示例 java
  • 原文地址:https://blog.csdn.net/qq_34484062/article/details/133772991