为什么这个错误?连接到sts.amazonaws.com:443 [sts.amazonaws.com/54.239.29.25]失败:连接超时:com.amazonaws.SdkClientExce

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么这个错误?连接到sts.amazonaws.com:443 [sts.amazonaws.com/54.239.29.25]失败:连接超时:com.amazonaws.SdkClientExce相关的知识,希望对你有一定的参考价值。

当在基于Java的lambda中使用STS客户端假设IAM角色时,是否有人面对并解决了此错误 - Connect to sts.amazonaws.com:443 [sts.amazonaws.com/54.239.29.25] failed: connect timed out: com.amazonaws.SdkClientException

我想知道 - 当我在我的pom中有aws-java-sdk-stsclient依赖,因此在我的阴影罐中,为什么会有互联网电话?由于lambda是在配置了SG的VPC中,因此阻止了Internet访问。

注 - 我必须承担角色才能从另一个AWS账户访问S3上的文件。更新IAM信任策略以使列表访问不是一种选择。

这是我在我的pom中的依赖 -

<!-- https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk-sts -->
        <dependency>
            <groupId>com.amazonaws</groupId>
            <artifactId>aws-java-sdk-sts</artifactId>
            <version>1.11.163</version>
        </dependency>

View from my external dependencies showing aws-java-sdk-sts libraries

这是我的java类,我假设使用sts客户端的角色 -

public class AWSTokenManager {
        public void awsTokenManager() {
            System.out.println("Inside awsTokenManager method");
            STSAssumeRoleSessionCredentialsProvider stsAssumeRoleSessionCredentialsProvider = new STSAssumeRoleSessionCredentialsProvider.Builder("role-arn-here", "us-east-1b")
                    .withStsClient(AWSSecurityTokenServiceClientBuilder.standard().build())
                    .withRoleSessionDurationSeconds(900)
                    .build();
            System.out.println("SessionCredentials awsaccesskeyid is - " + stsAssumeRoleSessionCredentialsProvider.getCredentials().getAWSAccessKeyId());
            System.out.println("SessionCredentials awsaccesskeyid is - " + stsAssumeRoleSessionCredentialsProvider.getCredentials().getAWSSecretKey());
            System.out.println("SessionCredentials awsaccesskeyid is - " + stsAssumeRoleSessionCredentialsProvider.getCredentials().getSessionToken());
            }
答案

为什么会有互联网电话?

为什么没有?您正在使用STS客户端访问STS服务。

除非您创建并配置了VPC Endpoint for STS(您没有提到),否则需要通过Internet访问STS端点以发送请求以调用AssumeRole

以上是关于为什么这个错误?连接到sts.amazonaws.com:443 [sts.amazonaws.com/54.239.29.25]失败:连接超时:com.amazonaws.SdkClientExce的主要内容,如果未能解决你的问题,请参考以下文章

与“无法连接到 iTunes”以进行应用内购买相关的这个 vendorID 错误消息是啥?

windows xp远程连接出来错误“由于数据加密错误,这个会话将结束.请重新连接到远程计算机

win7出现无法连接到代理服务器的错误,不能上网的问题的解决

为啥在 Robot Framework IDE (RIDE) 中使用 pymssql 连接到 db 时出现错误?

R中的H2O错误-无法连接到本地主机

Java Hibernate - 无法连接到 H2