Ich habe eine neue AWS Identity and Access Management (IAM)-Rolle erstellt, aber ich kann die Rolle nicht in der Dropdown-Liste finden, wenn ich eine Instanz starte.
Lösung
Die Dropdown-Liste enthält Instanzprofile und keine IAM-Rollen, aber Sie können einem Instanzprofil eine IAM-Rolle hinzufügen. Sie müssen das Instanzprofil auswählen, dem die erforderliche IAM-Rolle hinzugefügt wurde.
Gehen Sie wie folgt vor, um eine neue IAM-Rolle zu erstellen, die mit einem Instanzprofil verknüpft ist. Wählen Sie dann das Instanzprofil aus der Dropdown-Liste aus, wenn Sie Ihre Instanz starten. Erstellen Sie mithilfe der IAM-Konsole oder der AWS-Befehlszeilenschnittstelle (AWS CLI) eine neue IAM-Rolle, die mit einem Instanzprofil verknüpft ist.
Hinweis: Wenn Sie beim Ausführen von AWS-CLI-Befehlen Fehler erhalten, stellen Sie sicher, dass Sie die neueste Version der AWS-CLI verwenden.
Verwenden der IAM-Konsole
In diesem Beispiel wird Amazon Elastic Compute Cloud (Amazon EC2) verwendet, um zu zeigen, dass die Auswahl von EC2 als Anwendungsfall eine Vertrauensbeziehung für Amazon EC2 schafft. Ihr EC2-Anwendungsfall erstellt außerdem:
- Ein Instanzprofil.
- Weist dem Instanzprofil den gleichen Namen wie der IAM-Rolle zu.
- Fügt die IAM-Rolle demselben Instanzprofil hinzu.
Hinweis: Wenn EC2 bei der Erstellung der IAM-Rolle nicht ausgewählt ist, werden das Instanzprofil und die Vertrauensbeziehungen nicht für Amazon EC2 erstellt.
1. Öffnen Sie die IAM-Konsole.
2. Wählen Sie im Navigationsbereich Rollen und dann Rolle erstellen aus.
3. Wählen Sie EC2 als AWS-Service, wählen Sie EC2 als Anwendungsfall aus und klicken Sie dann auf Weiter: Genehmigungen.
4. Wählen Sie den Namen der Richtlinie für Ihren Anwendungsfall und dann Weiter: Markieren Sie, und wählen Sie dann Weiter: Überprüfung.
5. Geben Sie einen Rollennamen ein und wählen Sie dann Rolle erstellen aus.
Verwenden der AWS-CLI
1. Erstellen Sie eine Datei mit dem Namen
Test-Role-Trust-Policy.json und fügen Sie die folgende Richtlinie in die Datei ein:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
2.Erstellen Sie eine IAM-Rolle, indem Sie den folgenden Befehl ausführen:
$ aws iam create-role --role-name Test-Role --assume-role-policy-document file://Test-Role-Trust-Policy.json
3.Erstellen Sie ein Instanzprofil, indem Sie den folgenden Befehl ausführen:
$ aws iam create-instance-profile --instance-profile-name Webserver
4. Fügen Sie dem Instanzprofil eine IAM-Rolle hinzu, indem Sie den folgenden Befehl ausführen:
$ aws iam add-role-to-instance-profile --role-name Test-Role --instance-profile-name Webserver
Für eine bestehende IAM-Rolle für EC2 müssen Sie den EC2-Dienstprinzipal zu seiner bestehenden Vertrauensrichtlinie hinzufügen. Weitere Informationen finden Sie unter
Einen Principal angeben.
Hinweis: Wenn die IAM-Rollen und Instanzprofile unterschiedliche Namen haben, stellen Sie sicher, dass Sie das richtige Instanzprofil auswählen. Dem richtigen Instanzprofil wird beim Starten einer EC2-Instance die erforderliche IAM-Rolle hinzugefügt. Die IAM-Rolle wird nicht in der Dropdown-Liste aufgeführt.
Ähnliche Informationen
Eine Rolle ändern
Bearbeitung der Vertrauensbeziehung für eine bestehende Rolle
IAM-Rollen für Amazon EC2