Quali autorizzazioni / criteri per il ruolo IAM da utilizzare con lo script di monitoraggio CloudWatch


13

Con lo script di monitoraggio CloudWatch (mon-put-instance-data.pl) è possibile specificare un nome ruolo IAM per fornire credenziali AWS (--aws-iam-role = VALUE).

Sto creando un ruolo IAM per questo scopo (per eseguire mon-put-instance-data.pl su un'istanza AWS), ma quali autorizzazioni / politiche dovrei assegnare a questo ruolo ??

grazie per l'aiuto

Risposte:


20

Gli script di monitoraggio Amazon CloudWatch per Linux sono composti da due script Perl, entrambi che utilizzano un modulo Perl: una breve occhiata alla fonte rivela le seguenti azioni API AWS in uso:

Con queste informazioni è possibile assemblare la propria politica IAM , ad es. Tramite il generatore di politiche AWS : una politica onnicomprensiva sarebbe:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "cloudwatch:GetMetricStatistics",
        "cloudwatch:ListMetrics",
        "cloudwatch:PutMetricData",
        "ec2:DescribeTags"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}

Ovviamente puoi lasciar perdere cloudwatch:GetMetricStatistics cloudwatch:ListMetricsquando lo usi mon-put-instance-data.pl- tieni presente che non ho ancora testato il codice.


Queste azioni corrispondono alle azioni elencate nella documentazione su docs.aws.amazon.com/AWSEC2/latest/UserGuide/…
htaccess

2

La politica di cui sopra genera errori nella richiesta della versione.

Il seguente dovrebbe funzionare:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmt1426849513000",
            "Effect": "Allow",
            "Action": [
                "cloudwatch:GetMetricStatistics",
                "cloudwatch:ListMetrics",
                "cloudwatch:PutMetricAlarm",
                "cloudwatch:PutMetricData",
                "cloudwatch:SetAlarmState"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}

2

Esiste una politica IAM fornita da Amazon per CloudWatch. Non c'è bisogno di costruirne uno tuo. CloudWatchFullAccess


2
Grazie per la tua risposta. Non volevo dare pieno accesso a CloudWatch però ... Non voglio dare il permesso ad DeleteAlarms per esempio.
Céline Aussourd,

Per il servizio Dynatrace questo è perfetto!
holms,

IMHO, per quasi tutti i casi d'uso di "monitoraggio", si tratta di un accesso eccessivo. Lo script di monitoraggio non deve (dire) creare o eliminare metriche o dashboard. La politica aggiunge alcune autorizzazioni non cloudwatch abbastanza sicure, ma aggiunge anche tutte queste: docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/… . In una ipotesi approssimativa, CloudWatchReadOnlyAccesssarebbe un "primo tentativo" sicuro, ma anche quello potrebbe essere eccessivamente generoso.
Ralph Bolton,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.