Профиль не может быть нулевой ошибкой AWS даже при наличии IAM ~ java sdk - PullRequest
0 голосов
/ 22 октября 2019

У меня есть роль в экземпляре ec2, которая имеет разрешение роли для другой роли. У меня установлены доверительные отношения, так что это должно быть проблемой. У меня есть этот код для получения учетных данных IAM:

public class AwsCredentialsHelper {
    private static final String ROLE_ARN_PROPERTY = "aws.role.arn";

    private static final Logger logger = LogManager.getLogger("InfraLogger");

    private AwsCredentialsHelper() {
    }

    public static AWSCredentialsProvider getCredentialsProvider(String clientId, AWSCredentialsProvider defaultProvider) {
        String roleArn = getRoleArnProperty();

        if (roleArn != null) {
            if (logger.isDebugEnabled()) {
                logger.debug("Using assume role credentials provider for role {}", roleArn);
            }
            return new STSAssumeRoleSessionCredentialsProvider.Builder(roleArn, clientId).build();
        } else {
            if (logger.isDebugEnabled()) {
                logger.debug("Using default credentials provider");
            }
            return defaultProvider;
        }
    }

Для меня это не получается с:

18:59:47.516 [kpl-daemon-0000] DEBUG com.amazonaws.auth.AWSCredentialsProviderChain - Unable to load credentials from EnvironmentVariableCredentialsProvider: Unable to load AWS credentials from environment variables (AWS_ACCESS_KEY_ID (or AWS_ACCESS_KEY) and AWS_SECRET_KEY (or AWS_SECRET_ACCESS_KEY))
18:59:47.516 [kpl-daemon-0000] DEBUG com.amazonaws.auth.AWSCredentialsProviderChain - Unable to load credentials from SystemPropertiesCredentialsProvider: Unable to load AWS credentials from Java system properties (aws.accessKeyId and aws.secretKey)
18:59:47.516 [main] DEBUG org.springframework.jmx.export.annotation.AnnotationMBeanExporter - Unregistering JMX-exposed beans
18:59:47.523 [kpl-daemon-0000] DEBUG com.amazonaws.auth.AWSCredentialsProviderChain - Unable to load credentials from com.amazonaws.auth.profile.ProfileCredentialsProvider@c745363: profile file cannot be null

Кажется, он просматривает первые три места, но никогда не проходит мимо следующего (который включает в себя роль IAM). У нас, очевидно, нет настройки файла учетных данных. Тот же самый точный код работал в другой настройке для меня, так что я запутался, если я делаю это правильно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...