in src/main/java/com/aliyun/credentials/provider/DefaultCredentialsProvider.java [54:99]
public CredentialModel getCredentials() {
if (this.reuseLastProviderEnabled && this.lastUsedCredentialsProvider != null) {
return this.lastUsedCredentialsProvider.getCredentials();
}
CredentialModel credential;
List<String> errorMessages = new ArrayList<>();
if (USER_CONFIGURATION_PROVIDERS.size() > 0) {
for (AlibabaCloudCredentialsProvider provider : USER_CONFIGURATION_PROVIDERS) {
try {
credential = provider.getCredentials();
if (credential != null) {
this.lastUsedCredentialsProvider = provider;
return CredentialModel.builder()
.accessKeyId(credential.getAccessKeyId())
.accessKeySecret(credential.getAccessKeySecret())
.securityToken(credential.getSecurityToken())
.expiration(credential.getExpiration())
.type(credential.getType())
.providerName(String.format("%s/%s", this.getProviderName(), credential.getProviderName()))
.build();
}
} catch (Exception e) {
errorMessages.add(provider.getClass().getName() + ": " + e.getMessage());
}
}
}
for (AlibabaCloudCredentialsProvider provider : defaultProviders) {
try {
credential = provider.getCredentials();
if (credential != null) {
this.lastUsedCredentialsProvider = provider;
return CredentialModel.builder()
.accessKeyId(credential.getAccessKeyId())
.accessKeySecret(credential.getAccessKeySecret())
.securityToken(credential.getSecurityToken())
.expiration(credential.getExpiration())
.type(credential.getType())
.providerName(String.format("%s/%s", this.getProviderName(), credential.getProviderName()))
.build();
}
} catch (Exception e) {
errorMessages.add(provider.getClass().getSimpleName() + ": " + e.getMessage());
}
}
throw new CredentialException("Unable to load credentials from any of the providers in the chain: " + errorMessages);
}