配置jboss以使用Amazon IAM角色

时间:2017-09-21 19:30:31

标签: amazon-web-services jboss jboss-eap-7

我正在尝试配置jboss以使用AWS IAM Roles来访问S3和SQS。我见过的所有文档都使用静态访问和密钥,而不是角色允许的动态密钥。

有没有关于这样做的文件?

2 个答案:

答案 0 :(得分:0)

创建分配该角色的EC2实例。无论您运行什么,该实例中的任何应用程序都将能够访问AWS资源。

这样您就不需要在应用程序中编写任何安全代码。

同样在您的代码中,当您将角色分配给EC2实例时,您不需要提供任何凭据。

答案 1 :(得分:0)

在AWS中,有两种方法可以使用AWS IAM向您的代码提供访问AWS资源(如S3和SQS)的权限。

  • 如果您的代码在Amazon Compute Services(如EC2,Lambda)中运行,建议使用所需的策略创建IAM角色以访问S3& SQS还允许计算服务(EC2,Lambda)承担该角色(使用信任关系)。将此角色附加到EC2或Lambda后,您可以直接使用AWS SDK访问S3和SQS,而无需任何凭据或访问令牌来配置SDK。

      

    有关详细信息,请参阅Using an IAM Role to Grant Permissions to Applications Running on Amazon EC2 Instances

  • 如果您的代码在内部或亚马逊基础架构外部运行,则需要创建具有所需策略的IAM用户,并创建访问密钥(访问密钥ID和密钥)和initialize SDK允许访问S3或SQS,如下所示。

    var AWS = require('aws-sdk'); AWS.config.credentials = new AWS.Credentials({ accessKeyId: 'akid', secretAccessKey: 'secret' });