-1

嗨,我在 Spring Boot 中构建了一个应用程序,该应用程序使用 amazon textract 从 pdf 文件中获取表数据。此应用程序安装在我的本地主机上时可以正常工作。现在我在 AWS 环境中创建了一个新的 Elastic Beanstalk 应用程序,并在那里上传了我的 spring jar。当我调用应用程序的 url 时,我可以验证应用程序是否存在,但是当我调用任何反过来调用 textract 服务的端点时,我会收到权限错误。

User: arn:aws:sts::1234:assumed-role/aws-elasticbeanstalk-ec2-role/i-1234 is not authorized to perform textract:AnalyzeDocument (Service: Textract, Status Code: 400, Request ID: 123xyz, Extended Request ID: null)

谁能给我关于如何/在哪里设置它的建议?

谢谢

4

1 回答 1

1

在 Elastic Beanstalk 上运行 Spring Boot 应用程序时,您需要确保正确设置服务客户端。如果不这样做,就会遇到问题。例如,下面是一种为 Java V2 客户端的 Amazon DynamoDB 创建服务客户端的方法:

 DynamoDbClient ddb = DynamoDbClient.builder()
            .region(region)
            .credentialsProvider(EnvironmentVariableCredentialsProvider.create())
            .build(); 

您可以在 Elastic Beanstalk 上设置环境变量,以便成功创建服务客户端。更多信息在这里:

创建您的第一个 AWS Java Web 应用程序

于 2021-01-11T16:02:25.750 回答