Citrix DaaS

Verbindung zu AWS

Unter Verbindungen und Ressourcen erstellen und verwalten werden die Assistenten zum Erstellen einer Verbindung beschrieben. Die folgenden Informationen beziehen sich speziell auf AWS-Cloudumgebungen.

Hinweis:

Bevor Sie eine Verbindung zu AWS herstellen, müssen Sie zunächst Ihr AWS als Ressourcenstandort eingerichtet haben. Weitere Informationen finden Sie unter AWS-Virtualisierungsumgebungen.

Verbindung erstellen

Beim Erstellen einer Verbindung mit Studio gilt Folgendes:

  • Sie müssen den API-Schlüssel und die geheimen Schlüsselwerte angeben. Sie können die Schlüsseldatei mit diesen Werten aus AWS exportieren und anschließend importieren. Sie müssen auch die Werte für Region, Verfügbarkeitszone, VPC-Namen, Subnetzadressen, Domänenname, Namen der Sicherheitsgruppen und Anmeldeinformationen angeben.
  • Die für das AWS-Rootkonto von der AWS-Konsole abgerufene Anmeldeinformationsdatei hat nicht das gleiche Format wie die Anmeldeinformationsdateien, die für Standard-AWS-Benutzer heruntergeladen werden. Die Datei kann darum von Citrix DaaS nicht zum Ausfüllen der Felder API-Schlüssel und “Geheimer Schlüssel” verwendet werden. Verwenden Sie AWS Identity Access Management (IAM)-Anmeldeinformationsdateien.

Hinweis:

Nachdem Sie eine Verbindung hergestellt haben, kann die Aktualisierung des API-Schlüssels und des geheimen Schlüssels fehlschlagen. Um das Problem zu beheben, überprüfen Sie Ihren Proxyserver oder die Firewall-Beschränkungen und stellen Sie sicher, dass die folgende Adresse erreichbar ist: https://*.amazonaws.com.

Einschränkung

Wenn Sie den Namen einer AWS Virtual Private Cloud (VPC) in der AWS-Konsole ändern, wird die vorhandene Hostingeinheit in Citrix Cloud unterbrochen. Bei unterbrochener Hostingeinheit können Sie keine Kataloge erstellen oder Maschinen zu Katalogen hinzufügen. Um das Problem zu beheben, ändern Sie den Namen der AWS-VPC wieder auf den ursprünglichen Namen.

Standardwerte für Hostverbindungen

Wenn Sie Hostverbindungen in Studio für die AWS-Cloud-Umgebung erstellen, werden die folgenden Standardwerte angezeigt:

Option Absolut Prozent
Gleichzeitige Aktionen (alle Typen) 125 100
Höchstanzahl neue Aktionen pro Minute 150
Höchstanzahl gleichzeitiger Bereitstellungsvorgänge 100

MCS unterstützt standardmäßig maximal 100 gleichzeitige Provisioningvorgänge.

Sie können diese Werte in Citrix Studio im Abschnitt Erweitert unter Verbindung bearbeiten konfigurieren:

Identity and Access Management (IAM)

Alternativ können Sie mit dem Remote PowerShell SDK die maximale Anzahl gleichzeitiger Vorgänge festlegen, um die Einstellungen für Ihre Umgebung zu optimieren.

Geben Sie über die benutzerdefinierte PowerShell-Eigenschaft MaximumConcurrentProvisioningOperations die maximale Anzahl gleichzeitiger AWS-Provisioningvorgänge an.

Vor der Konfiguration:

  • Sie müssen PowerShell SDK für Cloud installiert haben.
  • Der Standardwert für MaximumConcurrentProvisioningOperations ist 100.

Führen Sie die folgenden Schritte aus, um den Wert MaximumConcurrentProvisioningOperations anzupassen:

  1. Öffnen Sie ein PowerShell-Fenster.
  2. Führen Sie asnp citrix* aus, um die Citrix-spezifischen PowerShell-Module zu laden.
  3. Geben Sie cd xdhyp:\Connections\ ein.
  4. Geben Sie dir ein, um die Verbindungen aufzulisten.
  5. Ändern oder initialisieren Sie die Zeichenfolge “Custom Properties”:

    • Wenn für die Zeichenfolge “Custom Properties” ein Wert festgelegt ist, kopieren Sie “Custom Properties” in den Editor. Ändern Sie dann die Eigenschaft MaximumConcurrentProvisioningOperations auf Ihren bevorzugten Wert. Sie können einen Wert zwischen 1 und 1000 eingeben. Beispiel: <Property xsi:type="IntProperty" Name="MaximumConcurrentProvisioningOperations" Value="xyz"/>.

    • Wenn die Zeichenfolge “Custom Properties” leer/null ist, müssen Sie die Zeichenfolge initialisieren, indem Sie die richtige Syntax für das Schema und die Eigenschaft MaximumConcurrentProvisioningOperations eingeben.

  6. Fügen Sie im PowerShell-Fenster die geänderte Zeichenfolge für “Custom Properties” aus dem Editor ein, und weisen Sie ihr eine Variable zu. Wenn Sie “Benutzerdefinierte Eigenschaft” initialisiert haben, fügen Sie die folgenden Zeilen nach der Syntax hinzu:

    $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><Property xsi:type="IntProperty" Name="MaximumConcurrentProvisioningOperations" Value="100"/></CustomProperties>'.

    Durch diese Zeichenfolge wird die Eigenschaft MaximumConcurrentProvisioningOperations auf 100 festgelegt. In der Zeichenfolge “Custom Properties” müssen Sie die Eigenschaft MaximumConcurrentProvisioningOperations auf einen Wert festlegen, der Ihren Bedürfnissen entspricht.

  7. Geben Sie Get-XDAuthentication ein, und Sie werden zur Eingabe Ihrer Anmeldeinformationen aufgefordert.
  8. Führen Sie $cred = Get-Credential aus, und Sie werden möglicherweise nur zur Eingabe eines Kennworts (oder eines Namens und eines Kennworts) aufgefordert. Möglicherweise müssen Sie auch die Anwendungs-ID und den zugehörigen geheimen Schlüssel eingeben. Verbindungen mit rollenbasierter Authentifizierung erfordern für role_based_auth den Namen und das Kennwort. Andernfalls geben Sie die AWS-API-ID und den geheimen Schlüssel ein.
  9. Führen Sie set-item -PSPath 'XDHyp:\Connections<connection-name>' -CustomProperties $customProperties -username $cred.username -Securepassword $cred.password aus. Für <connection-name> müssen Sie den Namen der Verbindung eingeben.
  10. Geben Sie dir ein, um die aktualisierte Zeichenfolge “CustomProperties” zu überprüfen.

Sicherheitsgruppen pro Netzwerkschnittstelle konfigurieren

Wenn Sie eine Hostverbindung bearbeiten, können Sie jetzt mithilfe eines PowerShell-Befehls die maximal zulässige Anzahl von Sicherheitsgruppen pro Elastic Network Interface (ENI) konfigurieren. Informationen zu Kontigenten für AWS-Sicherheitsgruppen finden Sie unter Sicherheitsgruppen.

So konfigurieren Sie Sicherheitsgruppen pro Netzwerkschnittstelle:

  1. Öffnen Sie ein PowerShell-Fenster.
  2. Führen Sie asnp citrix* aus, um die Citrix-spezifischen PowerShell-Module zu laden.
  3. Führen Sie cd xdhyp:\Connections\ aus.
  4. Führen Sie dir aus, um die Verbindungen aufzulisten.
  5. Führen Sie den folgenden PowerShell-Befehl aus, um Sicherheitsgruppen pro Netzwerkschnittstelle zu konfigurieren:

    Set-HypHypervisorConnectionMetadata -HypervisorConnectionName aws -Name "Citrix_MachineManagement_Options" -Value " AwsMaxENISecurityGroupLimit=<number>"
    <!--NeedCopy-->
    

    Hinweis:

    Wenn Sie keinen Wert für AwsMaxENISecurityGroupLimit festlegen, wird der Standardwert von 5 verwendet.

Service-Endpunkt-URL

Standard-Service-Endpunkt-URL

Wenn Sie MCS verwenden, werden neue AWS-Verbindungen mit einem API-Schlüssel und einem API-Geheimnis hinzugefügt. Anhand dieser Informationen und des authentifizierten Kontos fragt MCS bei AWS mit dem AWS-API-Aufruf DescribeRegions EC2 die unterstützten Zonen ab. Die Abfrage erfolgt mit der generischen EC2-Service-Endpunkt-URL https://ec2.amazonaws.com/. Wählen Sie über MCS die Zone für die Verbindung aus der Liste der unterstützten Zonen aus. Die bevorzugte AWS-Service-Endpunkt-URL wird automatisch für die Zone ausgewählt. Nach dem Erstellen der Service-Endpunkt-URL können Sie diese nicht mehr ändern.

Nicht standardmäßige Service-Endpunkt-URL

In manchen Situationen wird keine automatisch gewählte AWS-Service-Endpunkt-URL für die Verbindung benötigt. In diesem Fall können Sie mit dem Citrix Cloud-SDK und PowerShell eine Verbindung mit einer nicht standardmäßigen Service-Endpunkt-URL herzustellen. Zum Erstellen einer Verbindung mit der Service-Endpunkt-URL https://ec2.cn-north-1.amazonaws.com.cn gehen Sie beispielsweise folgendermaßen vor:

  1. Richten Sie den von AWS gehosteten Cloud Connector ein und stellen Sie sicher, dass er verbunden ist.
  2. Führen Sie die folgenden PowerShell-Befehle aus, um die Liste der Cloud Connectors anzuzeigen.

     PS C:> asnp citrix.*
     PS C:> Get-XDAuthentication
     PS C:> Get-ConfigEdgeServer
    <!--NeedCopy-->
    
  3. Suchen Sie die ZoneUid des neu erstellten Cloud Connectors und geben Sie sie in den folgenden PowerShell-Befehlen ein. Ersetzen Sie die kursiv dargestellten Elemente durch die entsprechenden Werte.

    PS C:\> $hyp= New-Item -Path xdhyp:\Connections -ZoneUidZoneUid-Name“My New Connection”-ConnectionType "AWS" -HypervisorAddress @("https://ec2.cn-north-1.amazonaws.com.cn") -UserName“APIkey” -Password“API Secret” -Persist PS C:\> New-BrokerHypervisorConnection -HypHypervisorConnectionUid $hyp. HypervisorConnectionUid

  4. Aktualisieren Sie die Registerkarte Hosting, um zu überprüfen, ob die EC2-Verbindung erstellt wurde.
  5. Fügen Sie unter Verwendung der neuen Verbindung einen Ressourcenstandort hinzu.

IAM-Berechtigungen definieren

Anhand der Informationen in diesem Abschnitt können Sie IAM-Berechtigungen für Citrix DaaS in AWS definieren. Der IAM-Dienst von Amazon gestattet Konten mit mehreren Benutzern, die in Gruppen organisiert werden können. Die Benutzer können verschiedene Berechtigungen für die Durchführung von Vorgängen haben, die mit dem Konto verknüpft sind. Weitere Informationen zu IAM-Berechtigungen finden Sie unter IAM-JSON-Richtlinienreferenz.

Gehen Sie zum Anwenden der IAM-Berechtigungsrichtlinie auf eine neue Benutzergruppe folgendermaßen vor:

  1. Melden Sie sich bei der AWS-Verwaltungskonsole an und wählen Sie IAM service aus der Dropdownliste aus.
  2. Wählen Sie Create a New Group of Users.
  3. Geben Sie einen Namen für die neue Benutzergruppe ein und wählen Sie Continue.
  4. Wählen Sie auf der Seite Permissions die Option Custom Policy und dann Select.
  5. Geben Sie einen Namen für die Berechtigungsrichtlinieein.
  6. Geben Sie im Abschnitt Richtliniendokument die relevanten Berechtigungen ein.

Nach Eingabe der Richtlinieninformationen wählen Sie Weiter, um die Anwendung der IAM-Berechtigungsrichtlinie auf die Benutzergruppe abzuschließen. Den Benutzern in der Gruppe werden nur die Berechtigungen erteilt, die sie zur Ausführung der für Citrix DaaS erforderlichen Aktionen benötigen.

Wichtig:

Verwenden Sie den Richtlinientext im nachstehenden Beispiel, um die von Citrix DaaS in einem AWS-Konto durchgeführten Aktionen aufzulisten, ohne diese auf bestimmte Ressourcen zu beschränken. Citrix empfiehlt die Verwendung des Beispiels zu Testzwecken. Für Produktionsumgebungen können Sie weitere Beschränkungen für Ressourcen hinzufügen.

IAM-Berechtigungen hinzufügen

Fügen Sie die Berechtigungen im Bereich IAM der AWS Management Console hinzu:

  1. Wählen Sie im Bereich Summary die Registerkarte Permissions.
  2. Wählen Sie Add Permissions.

Identity and Access Management (IAM)

Erteilen Sie im Fenster Add Permissions to folgende Berechtigungen:

Berechtigungen für IAM-Richtlinien erteilen

Verwenden Sie Folgendes als Beispiel für die Registerkarte JSON:

JSON-Beispiel

Tipp:

Das JSON-Beispiel enthält möglicherweise nicht alle Berechtigungen für Ihre Umgebung. Weitere Informationen finden Sie unter Über AWS-Berechtigungen.

Erforderliche AWS-Berechtigungen

Dieser Abschnitt enthält die vollständige Liste der AWS-Berechtigungen. Verwenden Sie sämtliche Berechtigungen, wie im Abschnitt angegeben, um eine ordnungsgemäße Funktionalität sicherzustellen.

Hinweis:

Die Berechtigung iam:PassRole wird nur für role_based_auth benötigt.

Hostverbindung erstellen

Eine neue Hostverbindung wird unter Verwendung der von AWS abgerufenen Informationen hinzugefügt.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "ec2:DescribeAvailabilityZones",
                "ec2:DescribeImages",
                "ec2:DescribeInstances",
                "ec2:DescribeInstanceTypes",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeSubnets",
                "ec2:DescribeVpcs"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ]
}
<!--NeedCopy-->

Energieverwaltung virtueller Maschinen

Maschineninstanzen werden ein- oder ausgeschaltet.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "ec2:AttachVolume",
                "ec2:CreateVolume",
                "ec2:DeleteVolume",
                "ec2:DescribeInstances",
                "ec2:DescribeVolumes",
                "ec2:DetachVolume",
                "ec2:StartInstances",
                "ec2:StopInstances"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ]
}
<!--NeedCopy-->

Erstellen, Aktualisieren oder Löschen von VMs

Ein Maschinenkatalog wird mit VMs erstellt, aktualisiert oder gelöscht, die als AWS-Instanzen bereitgestellt werden.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "ec2:AttachVolume",
                "ec2:AssociateIamInstanceProfile",
                "ec2:AuthorizeSecurityGroupEgress",
                "ec2:AuthorizeSecurityGroupIngress",
                "ec2:CreateImage",
                "ec2:CreateLaunchTemplate",
                "ec2:CreateSecurityGroup",
                "ec2:CreateTags",
                "ec2:CreateVolume",
                "ec2:DeleteVolume",
                "ec2:DescribeAccountAttributes",
                "ec2:DescribeAvailabilityZones",
                "ec2:DescribeIamInstanceProfileAssociations",
                "ec2:DescribeImages",
                "ec2:DescribeInstances",
                "ec2:DescribeInstanceTypes",
                "ec2:DescribeLaunchTemplates",
                "ec2:DescribeLaunchTemplateVersions",
                "ec2:DescribeNetworkInterfaces",
                "ec2:DescribeRegions",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeSnapshots",
                "ec2:DescribeSubnets",
                "ec2:DescribeTags",
                "ec2:DescribeSpotInstanceRequests",
                "ec2:DescribeInstanceCreditSpecifications",
                "ec2:DescribeInstanceAttribute",

                "ec2:GetLaunchTemplateData",
                "ec2:DescribeVolumes",
                "ec2:DescribeVpcs",
                "ec2:DetachVolume",
                "ec2:DisassociateIamInstanceProfile",
                "ec2:RunInstances",
                "ec2:StartInstances",
                "ec2:StopInstances",
                "ec2:TerminateInstances"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "ec2:AuthorizeSecurityGroupEgress",
                "ec2:AuthorizeSecurityGroupIngress",
                "ec2:CreateSecurityGroup",
                "ec2:DeleteSecurityGroup",
                "ec2:RevokeSecurityGroupEgress",
                "ec2:RevokeSecurityGroupIngress"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "s3:CreateBucket",
                "s3:DeleteBucket",
                "s3:PutBucketAcl",
                "s3:PutBucketTagging",
                "s3:PutObject",
                "s3:GetObject",
                "s3:DeleteObject",
                "s3:PutObjectTagging"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::citrix*"
        },
        {
            "Action": [
                "ebs:StartSnapshot",
                "ebs:GetSnapshotBlock",
                "ebs:PutSnapshotBlock",
                "ebs:CompleteSnapshot",
                "ebs:ListSnapshotBlocks",
                "ebs:ListChangedBlocks",
                "ec2:CreateSnapshot"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ]
}
<!--NeedCopy-->

Hinweis:

  • Der Abschnitt zu EC2, der sich auf SecurityGroups bezieht, wird nur benötigt, wenn während der Katalogerstellung eine Isolationssicherheitsgruppe für die Vorbereitungs-VM erstellt werden muss. Sobald dies abgeschlossen ist, sind diese Berechtigungen nicht erforderlich.

Direkter Disk-Upload und -Download

Durch den direkten Disk-Upload entfällt die Volumeworker-Anforderung beim Provisioning von Maschinenkatalogen. Stattdessen werden von AWS bereitgestellte öffentliche APIs verwendet. Diese Funktion reduziert die mit zusätzlichen Speicherkonten verbundenen Kosten und die komplexe Verwaltung von Volumeworker-Prozessen.

Hinweis:

Die Volumeworker-Unterstützung ist veraltet.

Folgende Berechtigungen müssen zur Richtlinie hinzugefügt werden:

  • ebs:StartSnapshot
  • ebs:GetSnapshotBlock
  • ebs:PutSnapshotBlock
  • ebs:CompleteSnapshot
  • ebs:ListSnapshotBlocks
  • ebs:ListChangedBlocks
  • ec2:CreateSnapshot
  • ec2:DeleteSnapshot
  • ec2:DescribeLaunchTemplates

Wichtig:

  • Sie können eine neue VM zu vorhandenen Maschinenkatalogen ohne Volumeworker-Ressourcen wie Volumeworker-AMI und Volumeworker-VM hinzufügen.
  • Wenn Sie einen vorhandenen Katalog löschen, in dem Volumeworker verwendet wurde, werden alle mit dem zugehörigen Volumeworker zusammenhängenden Artefakte gelöscht.

EBS-Verschlüsselung erstellter Volumes

EBS kann neu erstellte Volumes automatisch verschlüsseln, wenn das AMI verschlüsselt ist oder EBS zur Verschlüsselung aller neuen Volumes konfiguriert ist. Zum Implementieren der Funktionalität müssen jedoch die folgenden Berechtigungen in der IAM-Richtlinie enthalten sein.

{
     "Version": "2012-10-17",
     "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                 "kms:CreateGrant",
                 "kms:Decrypt",
                 "kms:DescribeKey",
                 "kms:GenerateDataKeyWithoutPlainText",
                 "kms:GenerateDataKey",
                 "kms:ReEncryptTo",
                 "kms:ReEncryptFrom"
            ],
            "Resource": "*"
        }
    ]
}
<!--NeedCopy-->

Hinweis:

Die Berechtigungen können durch Hinzufügen eines Abschnitts “Resource” und “Condition” nach Ermessen des Benutzers auf bestimmte Schlüssel beschränkt werden. Beispiel: KMS-Berechtigungen mit Bedingung:

{
     "Version": "2012-10-17",
     "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                 "kms:CreateGrant",
                 "kms:Decrypt",
                 "kms:DescribeKey",
                 "kms:GenerateDataKeyWithoutPlainText",
                 "kms:GenerateDataKey",
                 "kms:ReEncryptTo",
                 "kms:ReEncryptFrom"
            ],
            "Resource": [
                "arn:aws:kms:us-east-2:123456789012:key/abcd1234-a123-456d-a12b-a123b4cd56ef"
            ],
            "Condition": {
                "Bool": {
                    "kms:GrantIsForAWSResource": true
                }
            }
        }
    ]
}
<!--NeedCopy-->

Die folgende Schlüsselrichtlinienanweisung ist die komplette Standardrichtlinie für KMS-Schlüssel, die erforderlich ist, damit das Konto unter Einsatz von IAM-Richtlinien Berechtigungen für alle Aktionen (kms: *) für den KMS-Schlüssel delegieren kann.

{
"Sid": "Enable IAM policies",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::111122223333:root"
},
"Action": "kms:",
"Resource": ""
}
<!--NeedCopy-->

Weitere Informationen finden Sie in der offiziellen AWS-Dokumentation unter AWS Key Management Service.

Rollenbasierte IAM-Authentifizierung

Die folgenden Berechtigungen werden zur Unterstützung der rollenbasierten Authentifizierung hinzugefügt.

{
     "Version": "2012-10-17",
     "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::*:role/*"
        }
    ]
}
<!--NeedCopy-->

Richtlinie für Mindest-IAM-Berechtigungen

Die folgende JSON kann für alle derzeit unterstützten Features verwendet werden. Unter Verwendung der Richtlinie können Sie Hostverbindungen erstellen, VMs erstellen, aktualisieren und löschen und die Energieverwaltung durchführen. Die Richtlinie kann auf die Benutzer angewendet werden (siehe Definieren von IAM-Berechtigungen) oder Sie können die rollenbasierte Authentifizierung über den Sicherheitsschlüssel role_based_auth und den geheimen Schlüssel verwenden.

Wichtig:

Um role_based_auth zu verwenden, konfigurieren Sie beim Einrichten des Cloud Connectors zunächst die gewünschte IAM-Rolle für die EC2-Instanz des Cloud Connectors. Fügen Sie unter Verwendung von Citrix Studio die Hostingverbindung hinzu und geben Sie role_based_auth für den Authentifizierungsschlüssel und das Geheimnis an. Eine Hostingverbindung mit diesen Einstellungen verwendet dann die rollenbasierte Authentifizierung.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "ec2:AttachVolume",
                "ec2:AssociateIamInstanceProfile",
                "ec2:AuthorizeSecurityGroupEgress",
                "ec2:AuthorizeSecurityGroupIngress",
                "ec2:CreateImage",
                "ec2:CreateLaunchTemplate",
                "ec2:CreateNetworkInterface",
                "ec2:CreateTags",
                "ec2:CreateVolume",
                "ec2:DeleteLaunchTemplate",
                "ec2:DeleteNetworkInterface",
                "ec2:DeleteSecurityGroup",
                "ec2:DeleteSnapshot",
                "ec2:DeleteTags",
                "ec2:DeleteVolume",
                "ec2:DeregisterImage",
                "ec2:DescribeAccountAttributes",
                "ec2:DescribeAvailabilityZones",
                "ec2:DescribeIamInstanceProfileAssociations",
                "ec2:DescribeImages",
                "ec2:DescribeInstances",
                "ec2:DescribeInstanceTypes",
                "ec2:DescribeLaunchTemplates",
                "ec2:DescribeLaunchTemplateVersions",
                "ec2:DescribeNetworkInterfaces",
                "ec2:DescribeRegions",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeSnapshots",
                "ec2:DescribeSubnets",
                "ec2:DescribeTags",
                "ec2:DescribeSpotInstanceRequests",
                "ec2:DescribeInstanceCreditSpecifications",
                "ec2:DescribeInstanceAttribute",
                "ec2:GetLaunchTemplateData",
                "ec2:DescribeVolumes",
                "ec2:DescribeVpcs",
                "ec2:DetachVolume",
                "ec2:DisassociateIamInstanceProfile",
                "ec2:RebootInstances",
                "ec2:RunInstances",
                "ec2:StartInstances",
                "ec2:StopInstances",
                "ec2:TerminateInstances"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "ec2:AuthorizeSecurityGroupEgress",
                "ec2:AuthorizeSecurityGroupIngress",
                "ec2:CreateSecurityGroup",
                "ec2:DeleteSecurityGroup",
                "ec2:RevokeSecurityGroupEgress",
                "ec2:RevokeSecurityGroupIngress"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "s3:CreateBucket",
                "s3:DeleteBucket",
                "s3:DeleteObject",
                "s3:GetObject",
                "s3:PutBucketAcl",
                "s3:PutObject",
                "s3:PutBucketTagging",
                "s3:PutObjectTagging"
            ],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::citrix*"
        },
        {
            "Action": [
                "ebs:StartSnapshot",
                "ebs:GetSnapshotBlock",
                "ebs:PutSnapshotBlock",
                "ebs:CompleteSnapshot",
                "ebs:ListSnapshotBlocks",
                "ebs:ListChangedBlocks",
                "ec2:CreateSnapshot"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                 "kms:CreateGrant",
                 "kms:Decrypt",
                 "kms:DescribeKey",
                 "kms:GenerateDataKeyWithoutPlainText",
                 "kms:GenerateDataKey",
                 "kms:ReEncryptTo",
                 "kms:ReEncryptFrom"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::*:role/*"
        }
    ]
}
<!--NeedCopy-->

Hinweis:

  • Der Abschnitt zu EC2, der sich auf SecurityGroups bezieht, wird nur benötigt, wenn während der Katalogerstellung eine Isolationssicherheitsgruppe für die Vorbereitungs-VM erstellt werden muss. Sobald dies abgeschlossen ist, sind diese Berechtigungen nicht erforderlich.
  • Der KMS-Abschnitt ist nur bei Verwendung der EBS-Volume-Verschlüsselung erforderlich.
  • Der Berechtigungsbereich iam:PassRole wird nur für role_based_auth benötigt.
  • Anstelle eines Vollzugriffs können spezifische Berechtigungen auf Ressourcenebene gemäß Ihren Anforderungen und Ihrer Umgebung hinzugefügt werden. Weitere Informationen finden Sie in den AWS-Dokumenten Demystifying EC2 Resource-Level Permissions und Access management for AWS resources.
  • Verwenden Sie die Berechtigungen ec2:CreateNetworkInterface und ec2:DeleteNetworkInterface nur, wenn Sie die Volumeworker-Methode verwenden.

Berechtigungen für die Hostverbindung bestätigen

Sie können die Berechtigungen für eine Hostverbindung überprüfen, um Aufgaben im Zusammenhang mit der Erstellung und Verwaltung von MCS-Maschinenkatalogen auszuführen. Diese Implementierung hilft Ihnen, die fehlenden Berechtigungen, die für verschiedene Szenarien wie das Erstellen, Löschen und Aktualisieren von VMs, Energieverwaltung von VMs und EBS-Verschlüsselung erforderlich sind, im Voraus zu ermitteln, sodass Sie vermeiden können, in kritischen Zeiten blockiert zu werden.

Sie können die Berechtigungen für eine Hostverbindung mit dem PowerShell-Befehl Test-HypHypervisorConnection überprüfen. Das Ergebnis des Befehls wird als Liste erfasst, in der jedes Element in der Liste in drei Abschnitte unterteilt ist.

  • Kategorie: Die Aktion oder Aufgabe, die ein Benutzer ausführen kann, um einen MCS-Maschinenkatalog zu erstellen und zu verwalten.
  • Korrekturmaßnahme: Der Schritt, den ein Administrator ausführen muss, um die Diskrepanz bei fehlenden Berechtigungen eines Benutzers zu beheben.
  • Fehlende Berechtigung: Die Liste der fehlenden Berechtigungen für eine Kategorie.

Gehen Sie wie folgt vor, um die Berechtigungen zu überprüfen:

  1. Erstellen Sie eine Hostverbindung zu AWS.
  2. Öffnen Sie ein PowerShell-Fenster vom Delivery Controller-Host aus.
  3. Führen Sie asnp citrix* aus, um die Citrix-spezifischen PowerShell-Module zu laden.
  4. Führen Sie den folgenden Befehl aus, um zu überprüfen, ob Sie über die erforderlichen Berechtigungen verfügen, um Ihre Berechtigungen abzurufen.

    Test-HypHypervisorConnection -LiteralPath "XDHyp:\Connections\AWSCon"
    <!--NeedCopy-->
    
  5. Nachdem Sie die fehlenden Berechtigungen hinzugefügt haben, die zum Nachschlagen Ihrer Berechtigungen erforderlich sind, führen Sie den folgenden Befehl aus, um zu überprüfen, ob Sie über Berechtigungen in den folgenden Kategorien verfügen:

    • Erstellen, Aktualisieren, Löschen
    • Energieverwaltung
    • EBS-Verschlüsselung
    Test-HypHypervisorConnection -LiteralPath "XDHyp:\Connections\AWSCon" [-SecurePassword -Password] "password" -UserName "" -CustomProperties ""
    <!--NeedCopy-->
    

Weitere Informationen zum Hinzufügen von Berechtigungen finden Sie unter IAM-Berechtigungen hinzufügen.

So geht es weiter

Weitere Informationen