Ich möchte eine AWS-KMS-Schlüsselrichtlinie im AWS Key Management Service (AWS KMS) aktualisieren. Ich habe bestätigt, dass ich Administratorberechtigungen für meine AWS Identity and Access Management (IAM)-Identitäten (Benutzer, Gruppen und Rollen) habe. Ich kann die KMS-Schlüsselrichtlinie jedoch nicht lesen oder aktualisieren.
Kurzbeschreibung
IAM-Prinzipale müssen über die API-Aktionsberechtigung GetKeyPolicy verfügen, um eine Schlüsselrichtlinie zu lesen, und über PutKeyPolicy, um eine Richtlinie zu aktualisieren. Diese Berechtigungen werden entweder direkt mit der Schlüsselrichtlinie oder einer Kombination aus Schlüssel- und IAM-Richtlinien erteilt. Weitere Informationen finden Sie unter AWS Key Management Service.
Die standardmäßige IAM-Richtlinie für den AWS-KMS-Schlüssel enthält eine ähnliche Anweisung wie diese:
{ "Sid": "Enable IAM User Permissions",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::111122223333:root"
},
"Action": "kms:*",
"Resource": "*"
}
Die IAM-Entitäten für das AWS-Konto 111122223333 können alle in der angehängten Richtlinie zulässigen AWS-KMS-Aktionen ausführen. Manchmal können Entitäten keine API-Aktionen wie GetKeyPolicy oder PutKeyPolicy ausführen, auch wenn ihre angehängten Richtlinien die Berechtigungen enthalten. Um diesen Fehler zu beheben, überprüfen Sie, ob die Anweisung „IAM-Nutzerbereichtigungen aktivieren“ geändert wurde.
Behebung
IAM-Richtlinienberechtigungen überprüfen
Stellen Sie sicher, dass Ihre IAM-Entitäten berechtigt sind, einen AWS-KMS-Schlüssel zu lesen und zu aktualisieren, der dieser IAM-Richtlinie ähnelt:
{ "Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"kms:Create*",
"kms:Describe*",
"kms:Enable*",
"kms:List*",
"kms:Put*",
"kms:Update*",
"kms:Revoke*",
"kms:Disable*",
"kms:Get*",
"kms:Delete*",
"kms:TagResource",
"kms:UntagResource",
"kms:ScheduleKeyDeletion",
"kms:CancelKeyDeletion"
],
"Resource": "arn:aws:kms:*:111122223333:key/*"
}
]
}
Den CloudTrail-Ereignisverlauf verwenden
- Öffnen Sie die AWS CloudTrail-Konsole und wählen Sie dann Ereignisverlauf.
- Wählen Sie die Dropdownliste Suchattribute und dann Ereignisname aus.
- Geben Sie im Suchfenster PutKeyPolicy ein.
- Öffnen Sie das letzte PutKeyPolicy-Ereignis.
- Kopieren Sie die Richtlinie im Ereignisdatensatz und fügen Sie sie in Ihren bevorzugten Texteditor ein.
- Zerlegen Sie die Richtlinie in ein lesbares Format.
- Beachten Sie in der IAM-Richtlinien-Sid „Zugriff für Schlüsseladministratoren zulassen“ die IAM-Identitätsadministratoren ähnlich wie im folgenden Beispiel:
{ "Sid": "Allow access for Key Administrators",
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::111122223333:role/Administrator"
]
},
Schlüsseladministratoren können dann verwendet werden, um den Zugriff auf den Schlüssel wiederzuerlangen.
Athena-Abfragen verwenden
Wenn das Ereignis mit dem CloudTrail-Ereignisverlauf 90 Tage zurückliegt, können Sie Amazon Athena verwenden, um die CloudTrail-Protokolle zu durchsuchen. Anweisungen finden Sie unter Verwenden der CloudTrail-Konsole zum Erstellen einer Athena-Tabelle für CloudTrail-Protokolle.
Weitere Informationen finden Sie unter Wie erstelle ich automatisch Tabellen in Athena, um die CloudTrail-Protokolle zu durchsuchen?
Ähnliche Informationen
Sichere Zugangsschlüssel
AWS-KMS-Konzepte