繁体   English   中英

AWS Java SDK STS 在 Lambda 超时

[英]AWS Java SDK STS in Lambda timeout

我想通过 Lambda 中的 AWS Security Token Service 获取临时凭证,但它一直在AWSSecurityTokenServiceClientBuilder.standard().build()超时。

有人帮助我吗?

源代码:

package example;

import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.RequestHandler;
import com.amazonaws.services.securitytoken.AWSSecurityTokenService;
import com.amazonaws.services.securitytoken.AWSSecurityTokenServiceClientBuilder;
import com.amazonaws.services.securitytoken.model.AssumeRoleRequest;
import com.amazonaws.services.securitytoken.model.AssumeRoleResult;

public class SecurityTokenService implements RequestHandler<Request, Credential> {

    public Credential handleRequest(Request request, Context context) {
        AssumeRoleRequest assumeRoleRequest = new AssumeRoleRequest()
                .withPolicy("arn:aws:iam::12345678900:policy/SomePolicy")
                .withDurationSeconds(900);

        AWSSecurityTokenService securityTokenService = AWSSecurityTokenServiceClientBuilder.standard().build();

        AssumeRoleResult assumeRoleResult = securityTokenService.assumeRole(assumeRoleRequest);

        return new Credential(assumeRoleResult.getCredentials());

    }

}

错误信息:

{
  "errorMessage": "2018-02-22T09:12:55.102Z 8f49ee0a-17b0-11e8-892f-753d21bb516c Task timed out after 3.00 seconds"
}

我对 128 MB 的默认 memory 设置有同样的问题。 将 memory 增加到 512 MB 后,它现在可以工作了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM