Warum kann ich eine KMS-Schlüsselrichtlinie in AWS KMS nicht lesen oder aktualisieren?
Ich möchte eine AWS KMS-Schlüsselrichtlinie in AWS Key Management Service (AWS KMS) aktualisieren. Ich habe überprüft, dass ich Administratorberechtigungen für meine AWS Identity and Access Management (IAM)-Identitäten (Benutzer, Gruppen und Rollen) habe, aber ich kann die KMS-Schlüsselrichtlinie nicht lesen oder aktualisieren.
Kurzbeschreibung
IAM-Hauptzugriffsberechtigte benötigen die API-Aktionsberechtigung GetKeyPolicy, um eine Schlüsselrichtlinie lesen zu können, und 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 Verwalten des Zugriffs auf AWS KMS-Schlüssel.
Die standardmäßige KMS-Schlüssel-IAM-Richtlinie enthält eine Anweisung ähnlich der folgenden:
{ "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. Wenn die Entitäten keine API-Aktionen wie GetKeyPolicy oder PutKeyPolicy ausführen können, selbst wenn Berechtigungen in ihren angehängten Richtlinien zulässig sind, hat sich die Anweisung „IAM-Benutzerberechtigungen aktivieren“ möglicherweise geändert.
Lösung
Überprüfen der Berechtigungen für IAM-Richtlinien
Stellen Sie sicher, dass Ihre IAM-Entitäten die Berechtigung haben, einen KMS-Schlüssel zu lesen und zu aktualisieren, ähnlich der folgenden IAM-Richtlinie:
{ "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/*" } ] }
Verwenden des CloudTrail-Ereignisverlaufs
1. Öffnen Sie die AWS CloudTrail-Konsole und wählen Sie dann Ereignisverlauf.
2. Wählen Sie die Dropdown-Liste Lookup-Attribute aus und wählen Sie dann Ereignisname.
3. Geben Sie im Suchfenster PutKeyPolicy ein.
4. Öffnen Sie das letzte PutKeyPolicy-Ereignis.
5. Kopieren Sie die Richtlinie im Ereignisdatensatz und fügen Sie sie in Ihren bevorzugten Texteditor ein.
6. Übertragen Sie die Richtlinie in ein lesbares Format.
7. Beachten Sie in der IAM-Richtlinie Sid „Zugriff für Schlüsseladministratoren zulassen“ die IAM-Identitätsadministratoren ähnlich den folgenden:
{ "Sid": "Allow access for Key Administrators", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:role/Administrator" ] },
Schlüsseladministratoren können dann verwendet werden, um wieder Zugriff auf den Schlüssel zu erhalten.
Verwenden der Athena-Abfragen
Wenn das Ereignis des CloudTrail-Ereignisverlaufs mehr als 90 Tage zurückliegt, können Sie Amazon Athena verwenden, um 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 CloudTrail-Protokolle zu durchsuchen?
Ähnliche Informationen
Relevanter Inhalt
- AWS OFFICIALAktualisiert vor 3 Jahren
- AWS OFFICIALAktualisiert vor 8 Monaten
- AWS OFFICIALAktualisiert vor 7 Monaten
- AWS OFFICIALAktualisiert vor einem Jahr