Beispielszenarien für die Verwendung von Informationen zum letzten Zugriff - AWS Identitäts- und Zugriffsverwaltung

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Beispielszenarien für die Verwendung von Informationen zum letzten Zugriff

Sie können die Informationen, auf die zuletzt zugegriffen wurde, verwenden, um Entscheidungen über die Berechtigungen zu treffen, die Sie Ihren IAM-Entitäten oder AWS Organizations -Entitäten gewähren. Weitere Informationen finden Sie unter Verfeinerung der Berechtigungen bei der AWS Verwendung von Informationen, auf die zuletzt zugegriffen wurde.

Anmerkung

Bevor Sie die Zugriffsinformationen für eine Entität oder Richtlinie in IAM einsehen, sollten Sie sicherstellen AWS Organizations, dass Sie den Berichtszeitraum, die gemeldeten Entitäten und die bewerteten Richtlinientypen für Ihre Daten kennen. Weitere Details finden Sie unter Wissenswertes über die Informationen zum letzten Zugriff.

Sie als Administrator sind dafür zuständig, die richtige Ausgewogenheit zwischen Zugriffsfähigkeit und geringsten Berechtigungen zu finden, wie sie für Ihre Organisation geeignet ist.

Verwenden von Informationen zum Reduzieren von Berechtigungen für eine IAM-Gruppe

Sie können die Daten des letzten Servicezugriffs verwenden, um IAM-Gruppenberechtigungen so zu reduzieren, dass nur die Services enthalten sind, die Ihre Benutzer wirklich benötigen. Diese Methode ist ein wichtiger Schritt beim Erteilen von geringsten Rechten auf Service-Ebene.

Paulo Santos ist beispielsweise der Administrator, der für die Definition von AWS Benutzerberechtigungen für Example Corp. zuständig ist. Dieses Unternehmen hat gerade damit begonnen, die Software zu nutzen AWS, und das Softwareentwicklungsteam hat noch nicht definiert, welche AWS Dienste es nutzen wird. Paulo möchte dem Team Berechtigung für den Zugriff nur auf die Services geben, die benötigt werden, aber da dies noch nicht definiert ist, gibt er dem Team vorübergehend PowerUser-Berechtigungen. Anschließend verwendet er die Informationen zum letzten Zugriff, um die Berechtigungen der Gruppe zu reduzieren.

Paulo erstellt mithilfe des folgenden JSON-Texts eine verwaltete Richtlinie mit dem Namen ExampleDevelopment. Er weist sie dann einer Gruppe mit dem Namen Development zu und fügt der Gruppe alle Entwickler hinzu.

Anmerkung

Paulos Hauptbenutzer benötigen möglicherweise iam:CreateServiceLinkedRole-Berechtigungen, um einige Dienste und Funktionen nutzen zu können. Er weiß, dass das Hinzufügen dieser Berechtigung es den Benutzern ermöglicht, eine serviceverknüpfte Rolle zu erstellen. Er akzeptiert dieses Risiko für seine Hauptbenutzer.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "FullAccessToAllServicesExceptPeopleManagement", "Effect": "Allow", "NotAction": [ "iam:*", "organizations:*" ], "Resource": "*" }, { "Sid": "RequiredIamAndOrgsActions", "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole", "iam:ListRoles", "organizations:DescribeOrganization" ], "Resource": "*" } ] }

Paulo entscheidet sich, 90 Tage warten, bevor er mithilfe der AWS Management Console die Informationen zum letzten Zugriffs für die Development-Gruppe anzeigt. Er zeigt die Liste der Services an, auf die Mitglieder der Gruppe zugegriffen haben. Er erfährt, dass die Benutzer in der letzten Woche auf fünf Dienste zugegriffen haben: AWS CloudTrail Amazon CloudWatch Logs, Amazon EC2 und Amazon S3. AWS KMS Sie haben bei der ersten Evaluierung auf einige andere Dienste zugegriffen AWS, aber seitdem nicht mehr.

Paulo beschließt, die Richtlinienberechtigungen zu reduzieren, so dass nur diese fünf Services und die erforderlichen IAM- und Organizations-Aktionen enthalten sind. Er bearbeitet die ExampleDevelopment-Richtlinie mithilfe des folgenden JSON-Texts.

Anmerkung

Paulos Hauptbenutzer benötigen möglicherweise iam:CreateServiceLinkedRole-Berechtigungen, um einige Dienste und Funktionen nutzen zu können. Er weiß, dass das Hinzufügen dieser Berechtigung es den Benutzern ermöglicht, eine serviceverknüpfte Rolle zu erstellen. Er akzeptiert dieses Risiko für seine Hauptbenutzer.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "FullAccessToListedServices", "Effect": "Allow", "Action": [ "s3:*", "kms:*", "cloudtrail:*", "logs:*", "ec2:*" ], "Resource": "*" }, { "Sid": "RequiredIamAndOrgsActions", "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole", "iam:ListRoles", "organizations:DescribeOrganization" ], "Resource": "*" } ] }

Um die Anzahl der Zugriffsberechtigungen weiter zu reduzieren, kann Paulo die Ereignisse des Accounts im AWS CloudTrail Event-Verlauf einsehen. Dort kann er detaillierte Ereignisinformationen anzeigen, die er verwenden kann, um Berechtigungen der Richtlinie so zu reduzieren, dass nur die Aktionen und Ressourcen enthalten sind, die die Entwickler benötigen. Weitere Informationen finden Sie im AWS CloudTrail Benutzerhandbuch unter CloudTrail Ereignisse in der CloudTrail Konsole anzeigen.

Verwenden von Informationen zum Reduzieren von Berechtigungen für einen IAM-Benutzer

Sie können die Informationen des letzten Servicezugriffs verwenden, um die Berechtigungen für einen einzelnen IAM-Benutzer zu reduzieren.

Martha Rivera ist beispielsweise als IT-Administratorin dafür verantwortlich, dass die Mitarbeiter in ihrem Unternehmen nicht über zu viele Berechtigungen verfügen. AWS Im Rahmen einer regelmäßigen Sicherheitsprüfung überprüft sie die Berechtigungen aller IAM-Benutzer. Einer dieser Benutzer ist ein Anwendungsentwickler namens Nikhil Jayashankar, der vorher die Funktion eines Sicherheitsingenieurs innehatte. Aufgrund der Änderung der Stellenanforderungen ist Nikhil Mitglied sowohl der app-dev-Gruppe als auch der security-team-Gruppe. Die app-dev-Gruppe für seinen neuen Auftrag gewährt Berechtigungen für mehrere Dienste, darunter Amazon EC2, Amazon EBS, Auto Scaling, Amazon S3, Route 53 und Elastic Transcoder. Die security-team Gruppe für seinen alten Job erteilt IAM und Berechtigungen. CloudTrail

Martha meldet sich als Administrator bei der IAM-Konsole an und wählt Users (Benutzer), anschließend den Namen nikhilj und dann die Registerkarte Access Advisor aus.

Martha überprüft die Spalte Zuletzt aufgerufen und stellt fest, dass Nikhil in letzter Zeit nicht auf IAM, Route 53 CloudTrail, Amazon Elastic Transcoder und eine Reihe anderer Dienste zugegriffen hat. AWS Nikhil hat Zugriff auf Amazon S3. Martha wählt S3 aus der Liste der Services und erfährt, dass Nikhil in den letzten zwei Wochen einige S3-List-Aktionen durchgeführt hat. In ihrem Unternehmen bestätigt Martha, dass Nikhil keine geschäftliche Notwendigkeit hat, auf IAM zuzugreifen, und zwar auch deshalb, weil er kein Mitglied des CloudTrail internen Sicherheitsteams mehr ist.

Martha ist jetzt bereit, zu dem Service und den Aktionen, auf die zuletzt zugegriffen wurde, zu handeln. Im Gegensatz zu der Gruppe im vorherigen Beispiel können auf einen IAM-Benutzer wie nikhilj mehrere Richtlinien zutreffen und er kann Mitglied mehrerer Gruppen sein. Martha muss vorsichtig vorgehen, damit sie nicht versehentlich den Zugriff für nikhilj oder andere Gruppenmitglieder unterbricht. Sie muss nicht nur herausfinden, welchen Zugriff Nikhil haben sollte, sie muss auch bestimmen, wie er diese Berechtigungen erhält.

Martha wählt die Registerkarte Permissions (Berechtigungen) aus, wo sie anzeigt, welche Richtlinien nikhilj direkt zugewiesen sind und welche aus einer Gruppe angefügt sind. Sie erweitert die einzelnen Richtlinien und zeigt die Richtlinienübersicht an, um zu erfahren, welche Richtlinie Zugriff auf die Services gewährt, die Nikhil nicht verwendet:

  • IAM — Die IAMFullAccess AWS verwaltete Richtlinie ist direkt an die Gruppe angehängt nikhilj und an diese angehängt. security-team

  • CloudTrail — Die AWS CloudTrailReadOnlyAccess AWS verwaltete Richtlinie ist der security-team Gruppe zugeordnet.

  • Route 53 – Die vom Kunden verwaltete App-Dev-Route53-Richtlinie ist der app-dev-Gruppe angefügt.

  • Elastic Transcoder – Die vom Kunden verwaltete App-Dev-ElasticTranscoder-Richtlinie ist der app-dev-Gruppe angefügt.

Martha beschließt, die IAMFullAccess AWS verwaltete Richtlinie zu entfernen, die direkt angehängt ist. nikhilj Außerdem entfernt sie Nikhils Mitgliedschaft bei der security-team-Gruppe. Durch diese beiden Aktionen wird der unnötige Zugriff auf IAM und entfernt. CloudTrail

Nikhils Berechtigungen für den Zugriff auf Route 53 und Elastic Transcoder werden von der app-dev-Gruppe gewährt. Obwohl Nikhil diese Services nicht verwendet, kann es sein, dass andere Mitglieder der Gruppe das tun. Martha überprüft die Informationen über den letzten Zugriff auf die app-dev-Gruppe und erfährt, dass mehrere Mitglieder kürzlich auf Route 53 und Amazon S3 zugegriffen haben. Aber keine Gruppenmitglieder haben im letzten Jahr auf Elastic Transcoder zugegriffen. Sie entfernt die kundenverwaltete Richtlinie App-Dev-ElasticTranscoder aus der Gruppe.

Martha überprüft dann die Informationen zum letzten Servicezugriff für die kundenverwaltete Richtlinie App-Dev-ElasticTranscoder. Sie stellt fest, dass die Richtlinie nicht an andere IAM-Identitäten angefügt ist. Sie stellt innerhalb ihres Unternehmens Nachforschungen an, um sicherzustellen, dass die Richtlinie auch in der Zukunft benötigt wird, und löscht sie dann.

Verwenden von Informationen vor dem Löschen von IAM-Ressourcen

Sie können die Informationen zum letzten Servicezugriff verwenden, bevor Sie eine IAM-Ressource löschen, um sicherzustellen, dass eine gewisse Zeit vergangen ist, seitdem jemand die Ressource zum letzten Mal verwendet hat. Dies gilt für Benutzer, Gruppen, Rollen und Richtlinien. Weitere Informationen zu diesen Aktionen finden Sie in den folgenden Themen:

Verwenden von Informationen vor dem Bearbeiten von IAM-Richtlinien

Sie können die Informationen zum letzten Zugriff für eine IAM-Identität (Benutzer, Gruppe oder Rolle) oder für eine IAM-Richtlinie verwenden, bevor Sie eine Richtlinie bearbeiten, die sich auf diese Ressource auswirkt. Dies ist wichtig, da Sie nicht den Zugriff für jemanden entfernen möchten, der sie verwendet.

Arnav Desai ist beispielsweise Entwickler und AWS Administrator für Example Corp. Als sein Team mit der Nutzung begann, gewährten sie allen Entwicklern Power-User-Zugriff AWS, sodass sie vollen Zugriff auf alle Dienste außer IAM und Organizations hatten. Als ersten Schritt zur Gewährung der geringsten Rechte möchte Arnav die verwenden, um die verwalteten Richtlinien in seinem Konto AWS CLI zu überprüfen.

Dazu listet Arnav zuerst die kundenverwalteten Berechtigungsrichtlinien in seinem Konto auf, die einer Identität zugewiesen sind, indem er den folgenden Befehl ausführt:

aws iam list-policies --scope Local --only-attached --policy-usage-filter PermissionsPolicy

Aus der Antwort erfasst er den ARN für die einzelnen Richtlinien. Arnav generiert dann mit dem folgenden Befehl einen Bericht über die Informationen zum letzten Zugriff für jede Richtlinie.

aws iam generate-service-last-accessed-details --arn arn:aws:iam::123456789012:policy/ExamplePolicy1

Aus dieser Antwort erfasst er die ID des generierten Berichts aus dem JobId-Feld. Arnav fragt dann den folgenden Befehl ab, bis das JobStatus-Feld den Wert COMPLETED oder FAILED zurückgibt. Wenn der Auftrag fehlschlägt, erfasst er den Fehler.

aws iam get-service-last-accessed-details --job-id 98a765b4-3cde-2101-2345-example678f9

Wenn der Auftrag den Status COMPLETED aufweist, analysiert Arnav den Inhalt des ServicesLastAccessed-Arrays im JSON-Format.

"ServicesLastAccessed": [ { "TotalAuthenticatedEntities": 1, "LastAuthenticated": 2018-11-01T21:24:33.222Z, "ServiceNamespace": "dynamodb", "LastAuthenticatedEntity": "arn:aws:iam::123456789012:user/IAMExampleUser", "ServiceName": "Amazon DynamoDB" }, { "TotalAuthenticatedEntities": 0, "ServiceNamespace": "ec2", "ServiceName": "Amazon EC2" }, { "TotalAuthenticatedEntities": 3, "LastAuthenticated": 2018-08-25T15:29:51.156Z, "ServiceNamespace": "s3", "LastAuthenticatedEntity": "arn:aws:iam::123456789012:role/IAMExampleRole", "ServiceName": "Amazon S3" } ]

Anhand dieser Informationen stellt Arnav fest, dass die ExamplePolicy1-Richtlinie den Zugriff auf drei Services erlaubt, Amazon DynamoDB, Amazon S3 und Amazon EC2. Der IAMExampleUser-Benutzer namens IAMExampleRole hat am 1. November als letztes versucht, auf DynamoDB zuzugreifen, und jemand hat am 25. August die IAM-Rolle verwendet, um auf Amazon S3 zuzugreifen. Darüber hinaus gibt es zwei weitere Entitys, die im letzten Jahr versucht haben, auf Amazon S3 zuzugreifen. Allerdings hat im letzten Jahr niemand versucht, auf Amazon EC2 zugreifen.

Dies bedeutet, dass Arnav die Amazon EC2-Aktionen aus der Richtlinie entfernen kann. Arnav möchte das aktuelle JSON-Dokument für die Richtlinie überprüfen. Zuerst muss er die Versionsnummer der Richtlinie mit dem folgenden Befehl bestimmen.

aws iam list-policy-versions --policy-arn arn:aws:iam::123456789012:policy/ExamplePolicy1

Aus der Antwort erfasst Arnav die aktuelle Standardversionsnummer aus dem Versions-Array. Er verwendet dann diese Versionsnummer (v2), um das JSON-Richtliniendokument mit dem folgenden Befehl anzufordern.

aws iam get-policy-version --policy-arn arn:aws:iam::123456789012:policy/ExamplePolicy1 --version-id v2

Arnav speichert das JSON-Richtliniendokument, das im Document-Feld des PolicyVersion-Arrays zurückgegeben wurde. Innerhalb des Richtliniendokuments sucht Arnav nach Aktionen mit dem ec2-Namespace. Wenn keine Aktionen von anderen Namespaces in der Richtlinie verbleiben, trennt Arnav die Richtlinie von den betroffenen Identitäten (Benutzern, Gruppen und Rollen). Im Anschluss daran löscht Arnav die Richtlinie. In diesem Fall umfasst die Richtlinie die Services Amazon DynamoDB und Amazon S3. Arnav entfernt daher die Amazon EC2-Aktionen aus dem Dokument und speichert die Änderungen. Er verwendet dann den folgenden Befehl, um die Richtlinie mit der neuen Version des Dokuments zu aktualisieren und diese Version als Standardrichtlinienversion festzulegen.

aws iam create-policy-version --policy-arn arn:aws:iam::123456789012:policy/ExamplePolicy1 --policy-document file://UpdatedPolicy.json --set-as-default

Die ExamplePolicy1-Richtlinie ist jetzt aktualisiert und entfernt den Zugriff auf den unnötigen Amazon EC2-Service.

Andere IAM-Szenarien

Informationen darüber, wann eine IAM-Ressource (Benutzer, Gruppe, Rolle oder Richtlinie) zuletzt versucht hat, auf einen Service zuzugreifen, können Ihnen bei der Durchführung der folgenden Aufgaben helfen:

Verwenden von Informationen zum Optimieren von Berechtigungen für eine Organisationseinheit

Sie können die Informationen zum letzten Zugriff verwenden, um die Berechtigungen für eine Organisationseinheit (OU) in AWS Organizations einzugrenzen.

John Stiles ist beispielsweise Administrator AWS Organizations . Er ist dafür verantwortlich, dass die Mitarbeiter des Unternehmens AWS-Konten nicht über zu viele Berechtigungen verfügen. Im Rahmen einer periodischen Sicherheitsprüfung überprüft er die Berechtigungen seiner Organisation. Seine Development Organisationseinheit enthält Konten, die häufig zum Testen neuer AWS Dienste verwendet werden. John überprüft den Bericht regelmäßig auf Services, auf die innerhalb der letzten 180 Tage nicht zugegriffen wurde. Anschließend entfernt er die Zugriffsberechtigungen auf diese Services für die Mitglieder der Organisationseinheit.

John meldet sich bei der IAM-Konsole mit seinen Anmeldeinformationen für das Hauptkonto an. In der IAM-Konsole sucht er die Organisationsdaten für die Development-Organisationseinheit. Er überprüft die Tabelle mit dem Bericht über den Dienstzugriff und sieht zwei AWS Dienste, auf die seit mehr als dem von ihm bevorzugten Zeitraum von 180 Tagen nicht zugegriffen wurde. Er erinnert sich, dass er den Entwicklungsteams Berechtigungen für den Zugriff auf Amazon Lex und hinzugefügt hat AWS Database Migration Service. John setzt sich mit den Entwicklungsteams in Verbindung und vergewissert sich, dass keine geschäftliche Notwendigkeit mehr besteht, um diese Services zu testen.

John ist jetzt bereit, auf der Grundlage der Informationen zum letzten Zugriff zu handeln. Er wählt Edit in AWS Organizations(In bearbeiten) aus und wird darauf hingewiesen, dass die SCP mehreren Elemente zugeordnet ist. Er wählt Continue (Fortfahren). Darin AWS Organizationsüberprüft er die Ziele, um zu erfahren, welchen Organizations der SCP zugeordnet ist. Alle Entitys befinden sich innerhalb der Development-Organisationseinheit.

John beschließt, den Zugriff auf Amazon Lex und AWS Database Migration Service Aktionen im NewServiceTest SCP zu verweigern. Durch diese Aktion wird der unnötige Zugriff auf die Services entfernt.