Enhancement

I think that config-server should composite properties form different backends even some backend fails. Imagine config-server configured with git and vault backend. This is an usual configuration. Most of properties stored at git and sensible data stored at vault. If we have many services configured with config-service maybe some of them don't need properties form vault because they don't have sensible data to manage. If vault backend fails because token has has expired, config server response with internal server error Http 500. I think that services should not be affected by this behaviour. I think that config-server should return git properties and null properties for vault or some message error for vault backend but don't return http 500

Environment: Springboot 2.1.7.RELEASE spring-cloud-config-server:2.1.3.RELEASE Vault v1.3.1

Example if vault token is expired, exception is thrown.

Method getData at org.springframework.cloud.config.server.environment.VaultKvAccessStrategySupport

```@Override public String getData(HttpHeaders headers, String backend, String key) { try {

        String urlTemplate = String.format("%s/v1/%s/%s", this.baseUrl, backend,
                getPath());

        ResponseEntity<VaultResponse> response = this.rest.exchange(urlTemplate,
                HttpMethod.GET, new HttpEntity<>(headers), VaultResponse.class, key);
        HttpStatus status = response.getStatusCode();
        if (status == HttpStatus.OK) {
            return extractDataFromBody(response.getBody());
        }
    }
    catch (HttpStatusCodeException e) {
                    /*#########################################################
                    ## Only if HttpStatusCode is NOT FOUND return null
                    ## Maybe more http status should be included or include error at response?
                    ##########################################################
                    */
        if (e.getStatusCode() == HttpStatus.NOT_FOUND) {
            return null;
        }
        throw e;
    }
    return null;
}```

Only if status code is not found return null.

Comment From: spencergibb

This is a duplicate, need to find the other issue

Comment From: spencergibb

661