AWS IAM-Benutzer Gegenüber. IAM-Rollen: Welche Sollten Sie Verwenden?

0
281

IAM-Benutzer und-Rollen, damit Sie zu verwalten Sie den Zugriff auf Ihre AWS-Ressourcen, die mit bestimmten Berechtigungen, aber die zwei Typen von IAM-Zugriff verwendet werden, unterschiedlich in der Praxis. In diesem Artikel erklären wir die Unterschiede und wie Sie zu verwenden sind.

Benutzer Externe Benutzer (Für Die Menschen)

Der grundlegende Unterschied zwischen den IAM-Benutzer und-Rollen wird, von wo aus der Zugriff erlaubt ist.

  • IAM-Benutzer ermöglicht den externen Zugriff auf Ihre AWS-Ressourcen. Verwenden Sie diese Ressourcen, damit die Mitarbeiter Zugriff auf die AWS Management Console, sowie der Authentifizierung von der CLI läuft auf den Maschinen. IAM-Benutzer gibt einen direkten Zugang zu den Dienstleistungen mit den vorhandenen security-Token.
  • IAM-Rollen sollen nur für den internen Gebrauch, und sind etwas, das Sie zuweisen können, um Dinge wie die EC2-Instanzen und Lambda-Funktionen, um Ihnen zu ermöglichen, Ihre Arbeit effektiv. Rollen geben nicht jeder Zugriff auf Ihre eigenen, aber Sie ermöglichen Dienstleistungen zu handeln, als ob Sie bestimmte Berechtigungen.

Mit diesem aus dem Weg, reden wir über den IAM-Benutzer, der einfach mehr von den beiden. Präsentieren Sie ein fantastischer Weg, um den Zugriff verwalten für alles, von der service-Konten, um echte Mitarbeiter. Mit Nutzer sind, erhalten Sie eine access key ID und secret access key, die verwendet werden, um die Authentifizierung des AWS CLI. Sie können die CLI eine Rolle übernimmt, sobald Sie authentifiziert sind, aber Sie müssen noch ein IAM-Benutzerkonto mit der Berechtigung zu tun (mit der Ausnahme von EC2-Instanzen, dazu später mehr).

Sie können auch den Zugriff auf die AWS Management Console (web-GUI), das IAM-Benutzer, die perfekt für die Mitarbeiter. Sie müssen noch die richtigen Berechtigungen, oder die Konsole werfen eine Menge von Fehlern, sondern die Fähigkeit zur Nutzung der Konsole ist entscheidend.

Sie können hinzufügen, IAM-Benutzern, Gruppen zu, nicht festlegen von Berechtigungen (direkt, ermöglicht Ihnen eine einfachere Verwaltung der verschiedenen Rollen in Ihrer Organisation.

Nutzer jedoch ein paar Probleme in der Praxis. Die erste ist, dass, um die Authentifizierung über eine Anwendung auf EC2, müssen Sie Schlüssel Zugriff auf diese Instanz. Es ist nicht so schlimm wie das verlassen Ihrer root-Zugriff-Tasten, aber es ist immer noch ein Sicherheitsproblem, das gar nicht vorhanden sein müssen. Das problem ist besonders schlimm, wenn man bedenkt, dass diese können es Mitarbeitern ermöglichen, Ihre Privilegien zu eskalieren; wenn eine Anwendung läuft mit höheren rechten und speichert seine Schlüssel auf der Festplatte, kann der Mitarbeiter stehlen und verwenden Sie diese Schlüssel, die nicht ideal ist.

Das zweite Problem ist, dass IAM-Benutzer können Zugriff auf Ihre AWS-Ressourcen, die von überall, auch außerhalb von AWS. Dies ist notwendig für die Konten der Mitarbeiter, aber nicht notwendig für Anwendungen, die bereits die Ausführung in der AWS.

Rollen Gemeint Sind, davon Ausgegangen Werden Autorisierten Entitäten

Die Lösung der Probleme, die mit dem Benutzer wird gelöst durch Rollen. Rollen sind im wesentlichen die gleichen wie die Benutzer, aber ohne den Zugriff auf Tasten oder die management-Konsole zugreifen. Im wesentlichen, Sie sind nur einen Satz von Berechtigungen, die erteilt werden können, um verschiedene Dienste.

Zum Beispiel, ein häufiges problem ist die Authentifizierung Dienste müssen in der Lage sein, Objekte hochladen in S3. Statt ein Benutzerkonto erstellen, das würde lassen Sie die geheimen Schlüssel auf Ihren EC2-server (und alle benutzerdefinierten AMIs, die Sie eingerichtet haben) und aktivieren Sie den externen Zugriff müssen Sie stattdessen eine Rolle erstellen, Genehmigungen S3 zugreifen, wie “S3Uploader”.

Sie können diese Rolle eine Lambda-Funktion aktivieren, um Objekte in Ihrem bucket, oder Sie weisen es zu einer EC2-Instanz direkt. Der Dienst, der eine Rolle ist dann erlaubt, die Ressourcen zugreifen, die Ihr gegeben worden, aber es wird nicht ein Sicherheitsrisiko darstellen. Viele AWS-services erstellen von Rollen, die standardmäßig zu bedienen, so dass Sie Ihren IAM-Konsole kann bereits eine Menge von Ihnen.

Rollen können auch verwendet werden, von den Benutzern zu ermöglichen verwalteten Privilegien. Ein Arbeitnehmer kann davon ausgehen, eine Rolle (die angemeldet ist CloudTrail), indem Sie Ihnen die Berechtigungen der Rolle für eine kurze Zeit. Dies ermöglicht es dem Benutzer auf Anfrage kurzfristig Anmeldeinformationen AWS STS, der ist sicherer als die Befestigung der Berechtigungen, die dem Benutzer direkt Zugriff-Tasten.

Das hinzufügen von Rollen für EC2-Instanzen ist sehr nützlich. Sie können eine Rolle einer Instanz, die aus der EC2 Management Console mit der rechten Maustaste auf eine Instanz und wählen Sie “Instanz-Einstellungen” – > “Anfügen/Ersetzen IAM-Rolle”:

Sie können auch angeben, welche Rolle Sie innerhalb einer Vorlage starten oder starten Sie die Konfiguration. Jede Instanz (und die meisten Dienstleistungen) können nur eine Rolle, aber können Sie eine beliebige Anzahl von Strategien, um die Rolle selbst.

Die AWS CLI verwendet automatisch die Rolle für die jeweilige Instanz, so viel setup ist nicht erforderlich. Wenn Sie möchten, um manuell zu einer Rolle wechseln, können Sie dies mit der assume-Rolle-Befehl:

aws sts übernehmen-Rolle-Rolle-arn “arn:aws:iam:: (patientennummer) 123456789012:Rolle/Beispiel-Rolle” –Rolle-session-Namen AWSCLI-Sitzung

Beachten Sie, dass dies erfordert ein IAM-Benutzerkonto, um diesen Befehl auszuführen, so dass dies nur nützlich für die Aktivierung von Zugriffsrechten für die Mitarbeiter.