AWS - 从EC2连接到SQS
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AWS - 从EC2连接到SQS相关的知识,希望对你有一定的参考价值。
我使用以下代码获取AWS凭据以连接到SQS。这是我的个人凭证,当我在qa或prod env中部署此代码时,我不应该使用我的凭据连接到SQS。此代码将在AWS中的EC2容器中运行。有什么选择可以连接到SQS,而不必像我在下面那样明确提供用户ID /密码?
@Bean
public AWSCredentialsProvider awsCredentialsProvider() {
ProfileCredentialsProvider profileCredentialsProvider = new ProfileCredentialsProvider(credentialsProvider);
try {
profileCredentialsProvider.getCredentials();
} catch (Exception e) {
throw new AmazonClientException(
"Cannot load the credentials from the credential profiles file. " +
"Please make sure that your credentials file is at the correct " +
"location (~/.aws/credentials), and is in valid format.",
e);
}
return profileCredentialsProvider;
}
答案
- 创建具有足够权限的IAM角色,以获取您的应用将发出的API请求
- 将IAM角色分配给EC2实例
AWS开发工具包将自动从实例元数据中检索凭据。无需提供任何凭据。
见:Working with AWS Credentials - AWS SDK for Java
以上是关于AWS - 从EC2连接到SQS的主要内容,如果未能解决你的问题,请参考以下文章
从 AWS Beanstalk 应用程序连接到 AWS EC2
AWS Elastic Beanstalk Worker 无法连接到 SQS
AWS EC2:从 tomcat 7 连接到 PostgreSQL