1

spring-cloud-configサーバにserver.ssl.key-store-passwordを設定したいのですが、設定はGIT(application.yml)の設定になります。以下はspring-cloud-configサーバ用のSSL鍵の設定

は、私はそれが復号化機能がEnvironmentDecryptApplicationInitializerのために呼び出されたときに失敗しTextEncryptor FailsafeTextEncryptorでEncryptionBootstrapConfigurationを設定するコンフィグサーバをブートストラップしながらapplication.yml

server: 
    port: 8760 
    ssl: 
    key-store: path to .jks 
    key-store-password: '{cipher}encrypted password' 
    key-store-type: jks 
    key-password: '{cipher}encrypted password' 

で設定したいものです。私はこのエラーを得ていたhttps://stackoverflow.com/a/32047393/1946403

+0

あなたはこれを理解しましたか?私はまったく同じ問題に直面している。 –

答えて

0

呼ばコンフィグサーバ

を開始しながら、

はどのように我々は、私は{暗号}を使用することができるように、EncryptionBootstrapConfigurationのための私達のカスタムTextEncryptorを持つことができます。これを修正するために、私はEncryptionConfigurationとTextEncryptorをspring.factoryファイルに追加する必要がありました。

私は3つのファイルがあります。その後、私は/src/main/resources/META-INF/spring.factories

org.springframework.cloud.bootstrap.BootstrapConfiguration=com.rs.config.AESEncryptionConfiguration,com.common.encryption.AESTextEncryptor 
に両方のファイルへの参照を追加する必要がありました

@Component 
public class AESTextEncryptor implements TextEncryptor { 

    @Override 
    public String encrypt(String text) { 
     . 
     . 
     .  
    } 

    @Override 
    public String decrypt(String encryptedText) { 
     . 
     . 
     . 
    } 
} 

暗号化構成:

@Configuration 
public class AESEncryptionConfiguration { 

    @Bean 
    EnvironmentDecryptApplicationInitializer environmentDecryptApplicationInitializer() { 
     return new EnvironmentDecryptApplicationInitializer(new AESTextEncryptor()); 
    } 
} 

TextEncryptorを

こうすることで、カスタム暗号を作成することができました。

関連する問題