AWS IAM-Rollen auf der NetScaler VPX-Instanz konfigurieren
Anwendungen, die auf einer Amazon EC2-Instanz ausgeführt werden, müssen AWS-Anmeldeinformationen in den AWS-API-Anfragen enthalten. Sie können AWS-Anmeldeinformationen direkt in der Amazon EC2-Instanz speichern und Anwendungen in dieser Instanz erlauben, diese Anmeldeinformationen zu verwenden. Dann müssen Sie jedoch die Anmeldeinformationen verwalten und sicherstellen, dass sie die Anmeldeinformationen sicher an jede Instanz weitergeben, und jede Amazon EC2-Instanz aktualisieren, wenn es Zeit ist, die Anmeldeinformationen zu wechseln. Das ist eine Menge zusätzlicher Arbeit.
Stattdessen können und müssen Sie eine Identity and Access Management (IAM) -Rolle verwenden, um temporäre Anmeldeinformationen für Anwendungen zu verwalten, die auf einer Amazon EC2-Instanz ausgeführt werden. Wenn Sie eine Rolle verwenden, müssen Sie keine langfristigen Anmeldeinformationen (wie Benutzername und Kennwort oder Zugriffsschlüssel) an eine Amazon EC2-Instanz verteilen. Stattdessen bietet die Rolle temporäre Berechtigungen, die Anwendungen verwenden können, wenn sie andere AWS-Ressourcen aufrufen. Wenn Sie eine Amazon EC2-Instanz starten, geben Sie eine IAM-Rolle an, die der Instanz zugeordnet werden soll. Anwendungen, die auf der Instanz ausgeführt werden, können dann die von der Rolle bereitgestellten temporären Anmeldeinformationen verwenden, um API-Anfragen zu signieren.
Die mit Ihrem AWS-Konto verknüpfte IAM-Rolle muss für verschiedene Szenarien über die folgenden IAM-Berechtigungen verfügen.
HA-Paar mit IPv4-Adressen in derselben AWS-Zone:
"ec2:DescribeInstances",
"ec2:AssignPrivateIpAddresses",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
<!--NeedCopy-->
HA-Paar mit IPv6-Adressen in derselben AWS-Zone:
"ec2:DescribeInstances",
"ec2:AssignIpv6Addresses",
"ec2:UnassignIpv6Addresses",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
<!--NeedCopy-->
HA-Paar mit IPv4- und IPv6-Adressen in derselben AWS-Zone:
"ec2:DescribeInstances",
"ec2:AssignPrivateIpAddresses",
"ec2:AssignIpv6Addresses",
"ec2:UnassignIpv6Addresses",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
<!--NeedCopy-->
HA-Paar mit elastischen IP-Adressen über verschiedene AWS-Zonen hinweg:
"ec2:DescribeInstances",
"ec2:DescribeAddresses",
"ec2:AssociateAddress",
"ec2:DisassociateAddress",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
<!--NeedCopy-->
HA-Paar mit privaten IP-Adressen über verschiedene AWS-Zonen hinweg:
"ec2:DescribeInstances",
"ec2:DescribeRouteTables",
"ec2:DeleteRoute",
"ec2:CreateRoute",
"ec2:ModifyNetworkInterfaceAttribute",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
<!--NeedCopy-->
HA-Paar mit privaten IP- und Elastic IP-Adressen über verschiedene AWS-Zonen hinweg:
"ec2:DescribeInstances",
"ec2:DescribeAddresses",
"ec2:AssociateAddress",
"ec2:DisassociateAddress",
"ec2:DescribeRouteTables",
"ec2:DeleteRoute",
"ec2:CreateRoute",
"ec2:ModifyNetworkInterfaceAttribute",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
<!--NeedCopy-->
Autoscaling des AWS-Backends:
"ec2:DescribeInstances",
"autoscaling:*",
"sns:CreateTopic",
"sns:DeleteTopic",
"sns:ListTopics",
"sns:Subscribe",
"sqs:CreateQueue",
"sqs:ListQueues",
"sqs:DeleteMessage",
"sqs:GetQueueAttributes",
"sqs:SetQueueAttributes",
"iam:SimulatePrincipalPolicy",
"iam:GetRole"
<!--NeedCopy-->
Wichtige Hinweise:
- Wenn Sie eine Kombination der vorhergehenden Funktionen verwenden, verwenden Sie die Kombination von IAM-Berechtigungen für jede der Funktionen.
- Wenn Sie die Citrix CloudFormation-Vorlage verwenden, wird die IAM-Rolle automatisch erstellt. Die Vorlage erlaubt es nicht, eine bereits erstellte IAM-Rolle auszuwählen.
- Wenn Sie sich über die GUI bei der VPX-Instanz anmelden, wird eine Aufforderung zur Konfiguration der erforderlichen Berechtigungen für die IAM-Rolle angezeigt. Ignorieren Sie die Aufforderung, wenn Sie die Berechtigungen bereits konfiguriert haben.
- Eine IAM-Rolle ist sowohl für eigenständige als auch für Hochverfügbarkeitsbereitstellungen obligatorisch.
Erstellen einer IAM-Rolle
Dieses Verfahren beschreibt, wie Sie eine IAM-Rolle für die AWS-Back-End-Autoscaling-Funktion erstellen.
Hinweis:
Sie können dasselbe Verfahren anwenden, um alle IAM-Rollen zu erstellen, die anderen Funktionen entsprechen.
- Melden Sie sich an der AWS-Managementkonsole für EC2an.
-
Gehen Sie zur EC2-Instanz-Seite und wählen Sie Ihre ADC-Instanz aus.
-
Navigieren Sie zu Aktionen > Sicherheit > IAM-Rolle ändern.
-
Auf der Seite “ IAM-Rolle ändern “ können Sie entweder eine bestehende IAM-Rolle auswählen oder eine IAM-Rolle erstellen.
-
Gehen Sie wie folgt vor, um eine IAM-Rolle zu erstellen:
-
Klicken Sie auf der Seite “ IAM-Rolle ändern “ auf Neue IAM-Rolle erstellen.
-
Klicken Sie auf der Seite Rollen auf Rolle erstellen.
-
Wählen Sie AWS-Service unter Trusted Entity Type und EC2 unter Common Use Cases aus und klicken Sie dann auf Weiter.
-
Klicken Sie auf der Seite “ Berechtigungen hinzufügen “ auf Richtlinie erstellen.
-
Klicken Sie auf den JSON-Tab, um den JSON-Editor zu öffnen.
-
Löschen Sie im JSON-Editor alles und fügen Sie die IAM-Berechtigungen für die Funktion ein, die Sie verwenden möchten.
Fügen Sie beispielsweise die folgenden IAM-Berechtigungen für die AWS-Back-End-Autoscaling-Funktion ein:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "autoscaling:*", "sns:CreateTopic", "sns:DeleteTopic", "sns:ListTopics", "sns:Subscribe", "sqs:CreateQueue", "sqs:ListQueues", "sqs:DeleteMessage", "sqs:GetQueueAttributes", "sqs:SetQueueAttributes", "iam:SimulatePrincipalPolicy", "iam:GetRole" ], "Resource": "*" } ] } <!--NeedCopy-->
Stellen Sie sicher, dass das Schlüsselwertpaar “Version”, das Sie angeben, mit dem identisch ist, das automatisch von AWS generiert wird.
-
Klicken Sie auf Weiter: Überprüfen.
-
Geben Sie auf der Registerkarte Richtlinie überprüfen der Richtlinie einen gültigen Namen und klicken Sie auf Richtlinie erstellen.
-
Klicken Sie auf der Seite Identity Access Management auf den Richtliniennamen, den Sie erstellt haben. Erweitern Sie die Richtlinie, um den gesamten JSON-Code zu überprüfen, und klicken Sie auf Weiter.
-
Geben Sie der Rolle auf der Seite Name, Überprüfung und Erstellen einen gültigen Namen.
-
Klicken Sie auf Rolle erstellen.
-
-
Wiederholen Sie die Schritte 1, 2 und 3. Wählen Sie die Schaltfläche Aktualisieren und dann das Dropdownmenü aus, um die von Ihnen erstellte Rolle zu sehen.
-
Klicken Sie auf IAM-Rolle aktualisieren.
Testen Sie IAM-Richtlinien mit dem IAM-Richtliniensimulator
Der IAM-Richtliniensimulator ist ein Tool, mit dem Sie die Auswirkungen von IAM-Zugriffskontrollrichtlinien testen können, bevor Sie sie in die Produktion übernehmen. Es ist einfacher, Berechtigungen zu überprüfen und Fehler zu beheben.
-
Wählen Sie auf der IAM-Seite die IAM-Rolle aus, die Sie testen möchten, und klicken Sie auf Simulieren. Im folgenden Beispiel ist “ADC_IAMRole” die IAM-Rolle.
-
Wählen Sie in der IAM-Policy Simulator-KonsoleExisting PoliciesalsModus aus.
-
Wählen Sie auf der Registerkarte Benutzer, Gruppen und Rollen die Option Rollen aus dem Dropdownmenü aus und wählen Sie eine vorhandene Rolle aus.
-
Nachdem Sie die vorhandene Rolle ausgewählt haben, wählen Sie die darunter befindliche Richtlinie aus.
-
Nachdem Sie die Richtlinie ausgewählt haben, können Sie den genauen JSON-Code auf der linken Seite des Bildschirms sehen. Wählen Sie die gewünschten Aktionen im Dropdownmenü Aktionen auswählen aus.
-
Klicken Sie auf Simulation ausführen.
Detaillierte Informationen finden Sie in der AWS IAM-Dokumentation.