2016-08-26 74 views
0

我想为实例的IAM角色添加权限以允许使用Cloudwatch Log Service。在观看了Configuration Guide的服务,我看到了下面这段话:添加IAM角色的权限

The CloudWatch Logs agent supports IAM roles and users. 
If your instance already has an IAM role associated with it, make sure that you include the IAM policy below. 
If you don't already have an IAM role assigned to your instance, 
    you'll need to use your IAM credentials for the next steps because you cannot assign an IAM role to an existing instance; 
    you can only specify a role when you launch a new instance. 

我有一个困难时期正是这意味着盘算。当我创建了一个新的实例,我做了与CloudWatchLogsFullAccess政策和配置指南讲述了一个内嵌政策的IAM角色,您可以添加:

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
    { 
     "Effect": "Allow", 
     "Action": [ 
     "logs:CreateLogGroup", 
     "logs:CreateLogStream", 
     "logs:PutLogEvents", 
     "logs:DescribeLogStreams" 
    ], 
     "Resource": [ 
     "arn:aws:logs:*:*:*" 
    ] 
    } 
] 
} 

这是一个新的实例,然而上述通道混淆了我有关添加对现有实例的权限。我是否可以将CloudWatchLogsFullAccess策略添加到现有实例的角色以及内联策略中?

回答

2

尽管只有在实例启动期间才能将IAM角色分配给实例,但AWS在2017年2月宣布现在可以将IAM角色替换或附加到现有实例。

使用AWS控制台Easily Replace or Attach an IAM Role to an Existing EC2 Instance by Using the EC2 Console

使用AWS CLIAttach an AWS IAM Role to an Existing Amazon EC2 Instance by Using the AWS CLI

+0

是准确的?我有一个创建RDS集群的脚本,然后分配一个角色(在这种情况下,添加S3访问)'Add-RDSRoleToDBCluster' -DBClusterIdentifier $ cluster.DBClusterIdentifier' -RoleArn $ roleARN' -Credential $ credentials ' -Region $ paramHash.Region;但值得一提的是,这是RDS,如果不使用Lambda(IIRC),RDS将无法正常继承角色。 – mbourgon

+1

@mbourgon回答的准确性(2016年8月26日)。 AWS在2017年添加了对将角色分配给正在运行的实例的支持。 – helloV