IAM-Rollen für Amazon EC2 - Amazon Elastic Compute Cloud

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.

IAM-Rollen für Amazon EC2

Anwendungen müssen ihre API-Anfragen mit AWS Anmeldeinformationen signieren. Wenn Sie ein Anwendungsentwickler sind, benötigen Sie daher eine Strategie für die Verwaltung der Anmeldeinformationen für Ihre Anwendungen, die auf EC2 Instances ausgeführt werden. Sie können zum Beispiel die AWS -Anmeldeinformationen sicher an die Instances verteilen, damit die Anwendungen auf diesen Instances sie zum Signieren von Anforderungen verwenden können, während Ihre Anmeldeinformationen vor anderen Benutzern geschützt bleiben. Es ist jedoch schwierig, Anmeldeinformationen sicher an jede Instance zu verteilen, insbesondere an diejenigen, die in Ihrem Namen AWS erstellt werden, wie Spot-Instances oder Instances in Auto Scaling Scaling-Gruppen. Sie müssen auch in der Lage sein, die Anmeldeinformationen für jede Instance zu aktualisieren, wenn Sie Ihre AWS Anmeldeinformationen wechseln.

Wir haben IAM-Rollen entworfen, damit Ihre Anwendungen die API-Anforderungen sicher von Ihren Instances senden können, ohne dass Sie die von den Anwendungen verwendeten Sicherheitsanmeldeinformationen verwalten müssen. Anstatt Ihre AWS Anmeldeinformationen zu erstellen und zu verteilen, können Sie die Berechtigung zum Stellen von API-Anfragen mithilfe von IAM-Rollen wie folgt delegieren:

  1. Erstellen Sie eine IAM-Rolle.

  2. Definieren Sie, welche Konten oder AWS Dienste die Rolle übernehmen können.

  3. Definieren Sie, welche API-Aktionen und -Ressourcen die Anwendung nach Annahme der Rolle verwenden kann.

  4. Geben Sie die Rolle beim Starten der Instance an oder verknüpfen Sie die Rolle mit einer vorhandenen Instance.

  5. Lassen Sie die Anwendung einen Satz vorübergehende Anmeldeinformationen abrufen und verwenden.

Verwenden Sie IAM-Rollen zum Beispiel zum Erteilen von Berechtigungen für Anwendungen, die auf Instances ausgeführt werden, die einen Bucket in Amazon S3 verwenden müssen. Sie können Berechtigungen für IAM-Rollen angeben, indem Sie eine Richtlinie im JSON-Format erstellen. Diese Richtlinien sind denen ähnlich, die Sie für -Benutzer erstellen. Wenn Sie an einer Rolle etwas ändern, wird diese Änderung an alle Instances weitergegeben.

Anmerkung

Die Anmeldeinformationen für Amazon EC2 IAM-Rollen unterliegen nicht der in der Rolle konfigurierten maximalen Sitzungsdauer. Weitere Informationen finden Sie im IAM-Benutzerhandbuch unter Methoden zur Übernahme einer Rolle.

Beim Erstellen von IAM-Rollen ordnen Sie IAM-Richtlinien mit geringsten Berechtigungen zu, die den Zugriff auf die spezifischen API-Aufrufe einschränken, die die Anwendung benötigt. Verwenden Sie für die Windows-to-Windows Kommunikation klar definierte und gut dokumentierte Windows-Gruppen und -Rollen, um den Zugriff auf Anwendungsebene zwischen Windows-Instanzen zu gewähren. Gruppen und Rollen ermöglichen es Kunden, Berechtigungen auf Anwendungs- und NTFS-Ordnerebene zu definieren, um den Zugriff auf anwendungsspezifische Anforderungen zu beschränken.

Sie können nur eine IAM-Rolle an eine Instance anhängen, aber Sie können die gleiche Rolle an viele Instances anhängen. Weitere Informationen zum Erstellen und Verwenden von IAM-Rollen finden Sie unter Rollen im IAM-Benutzerhandbuch.

Sie können Berechtigungen auf Ressourcenebene auf Ihre IAM-Richtlinien anwenden, um zu steuern, ob Benutzer einer Instance IAM-Rollen anfügen, diese ersetzen oder trennen können. Weitere Informationen finden Sie unter Unterstützte Berechtigungen auf Ressourcenebene für Amazon-API-Aktionen EC2 und in diesem Beispiel: Beispiel: Arbeiten mit IAM-Rollen.

Instance-Profile

Amazon EC2 verwendet ein Instance-Profil als Container für eine IAM-Rolle. Wenn Sie eine IAM-Rolle mithilfe der IAM-Konsole erstellen, erzeugt die Konsole automatisch ein Instance-Profil und gibt ihm denselben Namen wie der entsprechenden Rolle. Wenn Sie die EC2 Amazon-Konsole verwenden, um eine Instance mit einer IAM-Rolle zu starten oder einer Instance eine IAM-Rolle zuzuweisen, wählen Sie die Rolle anhand einer Liste von Instance-Profilnamen aus.

Wenn Sie die AWS CLI API oder ein AWS SDK verwenden, um eine Rolle zu erstellen, erstellen Sie die Rolle und das Instance-Profil als separate Aktionen mit möglicherweise unterschiedlichen Namen. Wenn Sie dann die AWS CLI API oder ein AWS SDK verwenden, um eine Instance mit einer IAM-Rolle zu starten oder einer Instance eine IAM-Rolle zuzuweisen, geben Sie den Namen des Instanzprofils an.

Ein Instance-Profil kann nur eine IAM-Rolle enthalten. Sie können eine IAM-Rolle in mehrere Instanzprofile aufnehmen.

Um die Berechtigungen für eine Instanz zu aktualisieren, ersetzen Sie ihr Instanzprofil. Es wird nicht empfohlen, eine Rolle aus einem Instanzprofil zu entfernen, da es bis zu einer Stunde dauern kann, bis diese Änderung wirksam wird.

Weitere Informationen finden Sie im IAM-Benutzerhandbuch unter Verwenden von Instanzprofilen.

Berechtigungen für Ihren Anwendungsfall

Wenn Sie zum ersten Mal eine IAM-Rolle für Ihre Anwendungen erstellen, können Sie manchmal Berechtigungen erteilen, die über das erforderliche hinausgehen. Bevor Sie Ihre Anwendung in Ihrer Produktionsumgebung starten, können Sie eine IAM-Richtlinie generieren, die auf der Zugriffsaktivität für eine IAM-Rolle basiert. IAM Access Analyzer überprüft Ihre AWS CloudTrail Protokolle und generiert eine Richtlinienvorlage, die die Berechtigungen enthält, die von der Rolle in Ihrem angegebenen Zeitraum verwendet wurden. Sie können die Vorlage verwenden, um eine verwaltete Richtlinie mit definierten Berechtigungen zu erstellen und sie dann an die IAM-Rolle anzuhängen. Auf diese Weise gewähren Sie nur die Berechtigungen, die die Rolle für die Interaktion mit AWS Ressourcen für Ihren speziellen Anwendungsfall benötigt. Dies hilft Ihnen, die Best Practice einzuhalten, die geringsten Privilegien zu gewähren. Weitere Informationen finden Sie unter Richtliniengenerierung von IAM Access Analyzer im IAM-Benutzerhandbuch.

Instanzidentitätsrollen für EC2 Amazon-Instances

Jede EC2 Amazon-Instance, die Sie starten, hat eine Instance-Identitätsrolle, die ihre Identität repräsentiert. Eine Instance-Identitätsrolle ist eine Art von IAM-Rolle. AWS Dienste und Funktionen, die zur Verwendung der Instanzidentitätsrolle integriert sind, können sie verwenden, um die Instanz für den Dienst zu identifizieren.

Auf die Anmeldeinformationen für die Instance-Identitätsrolle können Sie über den Instance Metadata Service (IMDS) unter /identity-credentials/ec2/security-credentials/ec2-instance zugreifen. Die Anmeldeinformationen bestehen aus einem AWS temporären Zugriffsschlüsselpaar und einem Sitzungstoken. Sie werden verwendet, um AWS Sigv4-Anfragen an die AWS Dienste zu signieren, die die Instanzidentitätsrolle verwenden. Die Anmeldeinformationen sind in den Instance-Metadaten vorhanden, unabhängig davon, ob ein Service oder ein Feature, welches Instance-Identitätsrollen verwendet, in der Instance aktiviert ist.

Instance-Identitätsrollen werden automatisch erstellt, wenn eine Instance gestartet wird. Sie haben kein Rollenvertrauensrichtliniendokument und unterliegen keiner Identitäts- oder Ressourcenrichtlinie.

Unterstützte Services

Die folgenden AWS Dienste verwenden die Instanzidentitätsrolle:

  • Amazon EC2EC2 Instance Connect verwendet die Instance-Identitätsrolle, um die Hostschlüssel für eine Linux-Instance zu aktualisieren.

  • Amazon GuardDutyGuardDuty Runtime Monitoring verwendet die Instance-Identitätsrolle, damit der Runtime-Agent Sicherheitstelemetrie an den GuardDuty VPC-Endpunkt senden kann.

  • AWS Security Token Service (AWS STS) — Die Anmeldeinformationen für die Instance-Identitätsrolle können für die AWS STS GetCallerIdentityAktion verwendet werden.

  • AWS Systems Manager— Bei Verwendung der Standard-Host-Management-Konfiguration AWS Systems Manager wird die Identität verwendet, die von der Instance-Identitätsrolle bereitgestellt wird, um EC2 Instances zu registrieren. Nach der Identifizierung Ihrer Instance kann Systems Manager Ihre AWSSystemsManagerDefaultEC2InstanceManagementRole-IAM-Rolle an Ihre Instance weitergeben.

Instanzidentitätsrollen können nicht mit anderen AWS Diensten oder Funktionen verwendet werden, da sie nicht mit Instanzidentitätsrollen integriert sind.

Instance-Identitäts-Rollen-ARN

Die Instance-Identitätsrollen-ARN hat das folgende Format:

arn:aws-partition:iam::account-number:assumed-role/aws:ec2-instance/instance-id

Zum Beispiel:

arn:aws:iam::0123456789012:assumed-role/aws:ec2-instance/i-0123456789example

Weitere Informationen zu ARNs finden Sie unter Amazon Resource Names (ARNs) im IAM-Benutzerhandbuch.