春季启动https PKCS12 DerInputStream.getLength():lengthTag = 111,太大

时间:2019-05-15 12:00:13

标签: spring spring-boot https

我需要在https上使用Spring Boot应用程序。我有一个letsencrypt签名密钥。我将此证书转换为PKCS12,如下所示:

package com.androidapp.kjsscapp;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;

public class tabpageAdapter extends FragmentStatePagerAdapter {
    int countTab;
    public tabpageAdapter(FragmentManager fm, int tabCount) {
        super(fm);
        this.countTab = countTab;
    }

    @Override
    public Fragment getItem(int i) {
        Tab_General gen = new Tab_General();
        Tab_Admissions add = new Tab_Admissions();
        Tab_ScholarShip sch = new Tab_ScholarShip();
        switch (i){
            case 0:
                return gen;
            case 1:
                return add;
            case 2:
                return sch;
            default:
                return gen;
        }

    }

    @Override
    public int getCount() {
        return countTab;
    }
}

我将此密钥存储文件复制到资源目录,这是配置部分:

openssl pkcs12 -export -in fullchain.pem -inkey privkey.pem -out keystore.p12 -name tomcat -CAfile chain.pem -caname root

如果我检查此密钥库,就知道了:

require-ssl: true

server:
  port: 8443
  ssl:
    key-store-type: PKCS12
    key-store: classpath:keystore.p12
    key-store-password: xxxxx
    key-alias: tomcat

当我启动我的应用程序时:

keytool -list -keystore keystore.p12 
Keystore type: PKCS12
Keystore provider: SUN

Your keystore contains 1 entry

tomcat, May 15, 2019, PrivateKeyEntry, 
Certificate fingerprint (SHA-256): 

我需要配置其他任何东西吗? 谢谢, 扎梅克

1 个答案:

答案 0 :(得分:0)

我发现了问题,我的pom.xml中有一个资源过滤器插件破坏了密钥文件。我不得不从资源过滤器插件中排除密钥文件。