CF Auth issue with Instance certificate issue expiry for 2.2.x (#1713)
* Update PcfClientAuthenticationProvider.java Removing CF Cert Cache. https://github.com/spring-cloud/spring-cloud-config/issues/1693 * fix for 2.2.x Co-authored-by: Kamalakar <kamalakar.ponaka@gmail.com> Fixes gh-1693
This commit is contained in:
committed by
spencergibb
parent
13b9030e0f
commit
5b18e0ea7a
@@ -20,6 +20,7 @@ import org.springframework.cloud.config.server.environment.VaultEnvironmentPrope
|
||||
import org.springframework.cloud.config.server.environment.VaultEnvironmentProperties.AuthenticationMethod;
|
||||
import org.springframework.cloud.config.server.environment.vault.SpringVaultClientAuthenticationProvider;
|
||||
import org.springframework.util.Assert;
|
||||
import org.springframework.util.StringUtils;
|
||||
import org.springframework.vault.authentication.ClientAuthentication;
|
||||
import org.springframework.vault.authentication.PcfAuthentication;
|
||||
import org.springframework.vault.authentication.PcfAuthenticationOptions;
|
||||
@@ -48,12 +49,32 @@ public class PcfClientAuthenticationProvider extends SpringVaultClientAuthentica
|
||||
if (pcfProperties.getInstanceCertificate() != null) {
|
||||
builder.instanceCertificate(new ResourceCredentialSupplier(pcfProperties.getInstanceCertificate()));
|
||||
}
|
||||
else {
|
||||
builder.instanceCertificate(new ResourceCredentialSupplier(
|
||||
resolveEnvVariable("CF_INSTANCE_CERT")));
|
||||
}
|
||||
|
||||
if (pcfProperties.getInstanceKey() != null) {
|
||||
builder.instanceKey(new ResourceCredentialSupplier(pcfProperties.getInstanceKey()));
|
||||
}
|
||||
else {
|
||||
builder.instanceKey(new ResourceCredentialSupplier(
|
||||
resolveEnvVariable("CF_INSTANCE_KEY")));
|
||||
}
|
||||
|
||||
return new PcfAuthentication(builder.build(), vaultRestOperations);
|
||||
}
|
||||
|
||||
private static String resolveEnvVariable(String name) {
|
||||
|
||||
String value = System.getenv(name);
|
||||
|
||||
if (StringUtils.isEmpty(value)) {
|
||||
throw new IllegalStateException(
|
||||
String.format("Environment variable %s not set", name));
|
||||
}
|
||||
|
||||
return value;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user