Verbindung zu Amazon WorkSpaces Core Managed Instances
Verbindungen und Ressourcen erstellen und verwalten beschreibt die Assistenten, die eine Verbindung erstellen. Die folgenden Informationen enthalten Details, die speziell für Amazon WorkSpaces Core Managed Instances gelten.
Voraussetzungen
-
Führen Sie die folgenden Schritte aus, bevor Sie eine Verbindung zu Amazon WorkSpaces Core Managed Instances erstellen:
- Schließen Sie die Einrichtung Ihrer AWS als Ressourcenstandort ab. Siehe AWS-Virtualisierungsumgebungen.
- Definieren Sie die IAM-Berechtigungsrichtlinie für IAM-Benutzer oder -Rollen, damit Citrix® AWS-Ressourcen in Ihrem Namen verwalten kann.
- Erstellen Sie eine serviceverknüpfte Rolle.
IAM-Berechtigungen definieren
Bevor Sie eine Hostverbindung erstellen, muss eine IAM-Berechtigungsrichtlinie für einen IAM-Benutzer oder eine IAM-Rolle ordnungsgemäß definiert werden, die Citrix die entsprechenden Berechtigungen zum Bereitstellen und Verwalten von Ressourcen in Ihrem AWS-Konto in Ihrem Namen erteilt. Verwenden Sie die Informationen in diesem Abschnitt, um IAM-Berechtigungen für Citrix DaaS auf Amazon WorkSpaces Core Managed Instances zu definieren. Der IAM-Dienst von Amazon ermöglicht Konten mit mehreren Benutzern, die weiter in Gruppen organisiert werden können. Diese Benutzer können unterschiedliche Berechtigungen besitzen, um ihre Fähigkeit zur Durchführung von Vorgängen im Zusammenhang mit dem Konto zu steuern. Weitere Informationen zu IAM-Berechtigungen finden Sie in der IAM-JSON-Richtlinienreferenz.
Hinweis:
Da Citrix Ressourcen und Automatisierung in Ihrem AWS-Konto in Ihrem Namen bereitstellt und verwaltet, wird die Konfiguration von IAM-Berechtigungsrichtlinien basierend auf bestimmten Tags oder Ressourcennamenkonventionen nicht unterstützt.
So wenden Sie die IAM-Berechtigungsrichtlinie auf eine neue Benutzergruppe an:
- Melden Sie sich bei der AWS-Verwaltungskonsole an und wählen Sie den IAM-Dienst aus der Dropdownliste aus.
- Wählen Sie Create a New Group of Users (Neue Benutzergruppe erstellen).
- Geben Sie einen Namen für die neue Benutzergruppe ein und wählen Sie Continue (Weiter).
- Wählen Sie auf der Seite Permissions (Berechtigungen) die Option Custom Policy (Benutzerdefinierte Richtlinie).
- Geben Sie einen Namen für die Permissions policy (Berechtigungsrichtlinie) ein.
- Geben Sie im Abschnitt Policy Document (Richtliniendokument) die relevanten Berechtigungen ein.
Nachdem Sie die Richtlinieninformationen eingegeben haben, wählen Sie Continue (Weiter), um die Anwendung der IAM-Berechtigungsrichtlinie auf die Benutzergruppe abzuschließen. Benutzern in der Gruppe werden nur die Aktionen gestattet, die für Citrix DaaS erforderlich sind.
Wichtig:
Verwenden Sie den im Beispiel dieses Artikels bereitgestellten Richtlinientext, um die Aktionen aufzulisten, die ein Citrix DaaS zum Ausführen von Aktionen innerhalb eines AWS-Kontos verwendet, ohne diese Aktionen auf bestimmte Ressourcen zu beschränken. Citrix empfiehlt, das Beispiel zu Testzwecken zu verwenden. Für Produktionsumgebungen können Sie weitere Einschränkungen für Ressourcen hinzufügen.
IAM-Berechtigungen hinzufügen
Fügen Sie die Berechtigungen im Abschnitt IAM der AWS-Verwaltungskonsole hinzu:
- Wählen Sie im Bereich Summary (Zusammenfassung) die Registerkarte Permissions (Berechtigungen).
-
- Wählen Sie Add permissions (Berechtigungen hinzufügen).
-
- Erteilen Sie im Bildschirm Add Permissions to (Berechtigungen hinzufügen) die Berechtigungen.
- Fügen Sie im JSON-Abschnitt die erforderlichen AWS-Berechtigungen für Ihre Umgebung hinzu.
Eine serviceverknüpfte Rolle erstellen
Erstellen Sie für jedes Ihrer AWS-Konten, von denen Citrix Core V2-APIs aufruft, eine serviceverknüpfte Rolle (SLR).
Die Schritte zum Erstellen der Rolle:
- Öffnen Sie eine Befehlszeilenschnittstelle (CLI) in der AWS-Verwaltungskonsole.
-
Führen Sie den folgenden Befehl in der CLI aus:
aws iam create-service-linked-role --aws-service-name workspaces-instances.amazonaws.com <!--NeedCopy-->
Sie können die serviceverknüpfte Rolle auch über die Amazon WorkSpaces Core-Verwaltungskonsole konfigurieren. Siehe Erstellen einer serviceverknüpften Rolle (Konsole).
Eine Verbindung erstellen
Sie können eine Verbindung zu Amazon WorkSpaces Core Managed Instances erstellen mit:
Hinweis:
Überprüfen Sie Ihre Proxyserver- oder Firewall-Einschränkungen und stellen Sie sicher, dass die folgenden Adressen erreichbar sind:
https://*.amazonaws.comundhttps://*.api.aws. Stellen Sie außerdem sicher, dass alle unter Citrix Gateway-Dienstkonnektivität genannten Adressen erreichbar sind.Wenn diese nicht erreichbar sind, kann dies beim Erstellen oder Aktualisieren der Hostverbindung zu Fehlern führen.
Eine Verbindung mit Studio erstellen
- Navigieren Sie zur Seite Hosting > Verbindung und Ressourcen hinzufügen.
-
Führen Sie auf der Seite Verbindung die folgenden Schritte aus, um die Verbindung zu konfigurieren:
- Wählen Sie Neue Verbindung erstellen.
- Wählen Sie unter Zone den Ressourcenstandort aus, den Sie für Ihre AWS-Umgebung eingerichtet haben.
- Wählen Sie Amazon WorkSpaces Core als Verbindungstyp aus.
-
Wählen Sie IAM-Benutzerzugriffsschlüssel verwenden oder IAM-Rolle verwenden.
Geben Sie für den IAM-Benutzerzugriffsschlüssel Ihren API-Schlüssel und Geheimschlüssel für den IAM-Benutzer an, der über die entsprechende IAM-Berechtigungsrichtlinie verfügt, damit Citrix Ressourcen in Ihrem AWS-Konto verwalten kann.
Stellen Sie für die IAM-Rolle sicher, dass Sie der Citrix Cloud Connector-Instanz eine IAM-Rolle zugewiesen haben mit der entsprechenden IAM-Berechtigungsrichtlinie, damit Citrix Ressourcen in Ihrem AWS-Konto verwalten kann. Weitere Informationen finden Sie im Leitfaden zur rollenbasierten Authentifizierung.
- Um API-Anfragen an AWS über Citrix Cloud Connectors zu leiten, aktivieren Sie das Kontrollkästchen Systemproxy auf Citrix Cloud Connectors verwenden. Dadurch wird sichergestellt, dass die AWS-Konnektivität ordnungsgemäß funktioniert, wenn Cloud Connectors keinen direkten Internetzugang haben.
- Geben Sie einen Verbindungsnamen ein und klicken Sie auf Weiter.
- Geben Sie auf der Seite Speicherort der virtuellen Maschine den Speicherort an, an dem die VMs bereitgestellt werden sollen. Wählen Sie die Cloud-Region, VPC und Verfügbarkeitszone (oder lokale Zone) für die Erstellung neuer VMs aus.
-
Auf der Seite Netzwerk:
- Geben Sie einen Namen für die Ressourcen ein, die Sie zuvor in der Verfügbarkeitszone (oder lokalen Zone) ausgewählt haben.
- Wählen Sie ein oder mehrere Subnetze in der VPC aus, die Sie im vorherigen Menü konfiguriert haben.
- Klicken Sie sich durch die verbleibenden Seiten bis zur Seite Zusammenfassung.
- Klicken Sie auf Fertig stellen, um die Hostverbindung zu Amazon WorkSpaces Core Managed Instances zu erstellen.
Wichtige Überlegungen
Wenn Sie eine Verbindung mit Studio erstellen:
- Definieren Sie geeignete IAM-Berechtigungen, damit Citrix Ihre AWS-Ressourcen verwalten kann.
- Wenn Sie einen IAM-Benutzerzugriffsschlüssel verwenden, damit Citrix Ihre AWS-Ressourcen verwalten kann, müssen Sie die Werte für den API-Schlüssel und den geheimen Schlüssel angeben. Sie können die Schlüsseldatei mit diesen Werten aus AWS exportieren und dann importieren. Sie müssen außerdem die Region, die Availability Zone, den VPC-Namen, die Subnetzadressen, den Domänennamen, die Namen der Sicherheitsgruppen und die Anmeldeinformationen angeben.
- Wenn Sie eine IAM-Rolle verwenden, damit Citrix Ihre AWS-Ressourcen verwalten kann, müssen Sie sicherstellen, dass allen Ihren Cloud Connector(s) eine Rolle mit den entsprechenden IAM-Berechtigungen zugewiesen ist. Weitere Informationen finden Sie im Leitfaden zur rollenbasierten Authentifizierung.
- Die Anmeldeinformationsdatei für das AWS-Root-Konto (aus der AWS-Konsole abgerufen) ist nicht im selben Format wie Anmeldeinformationsdateien, die für Standard-AWS-Benutzer heruntergeladen wurden. Daher kann Citrix DaaS die Datei nicht verwenden, um die Felder für den API-Schlüssel und den geheimen Schlüssel zu füllen. Stellen Sie sicher, dass Sie AWS Identity Access Management (IAM)-Anmeldeinformationsdateien verwenden.
- Die Zone kann eine Availability Zone oder eine lokale Zone sein.
Erstellen einer Verbindung mit PowerShell
- Öffnen Sie ein PowerShell-Fenster.
- Führen Sie
asnp citrix*aus, um die Citrix-spezifischen PowerShell-Module zu laden. -
Führen Sie die folgenden Befehle aus. Es folgt ein Beispiel:
$connectionName = "demo-hostingconnection" $cloudRegion = "us-east-1" $apiKey = "aaaaaaaaaaaaaaaaaaaa" $apiSecret = “bbbbb” $secureKey = ConvertTo-SecureString -String $apiSecret $zoneUid = "00000000-0000-0000-0000-000000000000" $connectionPath = "XDHyp:\Connections\" + $connectionName $connection = New-Item -Path $connectionPath -ConnectionType "AmazonWorkSpacesCoreMachineManagerFactory" -HypervisorAddress " "https://workspaces-instances.$($cloudRegion).api.aws"" -Persist -Scope @() -UserName $apiKey -SecurePassword $secureKey -ZoneUid $zoneUid New-BrokerHypervisorConnection -HypHypervisorConnectionUid $connection.HypervisorConnectionUid $hostingUnitName = "demo-hostingunit" $availabilityzone = "us-east-1a" $vpcName = "Default VPC" $jobGroup = [Guid]::NewGuid() $hostingUnitPath = "XDHyp:\HostingUnits\" + $HostingUnitName $rootPath = $connectionPath + "\" + $vpcName + ".virtualprivatecloud\" $availabilityZonePath = @($rootPath + $availabilityzone + ".availabilityzone") $networkPaths = (Get-ChildItem $availabilityZonePath[0] | Where ObjectType -eq "Network") | Select-Object -ExpandProperty FullPath # will select all the networks in the availability zone New-Item -Path $hostingUnitPath -AvailabilityZonePath $availabilityZonePath -HypervisorConnectionName $connectionName -JobGroup $jobGroup -PersonalvDiskStoragePath @() -RootPath $rootPath -NetworkPath $networkPaths <!--NeedCopy-->
Hinweis:
Um eine Verbindung mit rollenbasierter Authentifizierung zu erstellen, geben Sie apiKey und apiSecret als
role_based_authan.
Einschränkung
- Wenn Sie den Namen einer AWS Virtual Private Cloud (VPC) in der AWS-Konsole ändern, wird die vorhandene Hosting-Einheit in Citrix Cloud™ unterbrochen. Wenn die Hosting-Einheit unterbrochen ist, können Sie keine Kataloge erstellen oder Maschinen zu vorhandenen Katalogen hinzufügen. Um das Problem zu beheben, ändern Sie den Namen der AWS VPC wieder in den ursprünglichen Namen.
Erstellen einer sicheren Umgebung für AWS-verwalteten Datenverkehr
Wenn Sie einen Proxy auf den Cloud Connectors konfiguriert haben, müssen Sie die Hostverbindung so erstellen, dass sie den Proxy verwendet, damit von MCS getätigte API-Aufrufe ordnungsgemäß über den Proxy geleitet werden. MCS ermöglicht es, den Netzwerkverkehr (API-Aufrufe von Citrix Cloud zum AWS-Hypervisor) über Cloud Connectors in Ihrer Umgebung zu leiten.
- Die Hostverbindung kann den WinHTTP-Systemproxywert lesen, der während der Cloud Connector-Installation konfiguriert wird. Sie können den Proxy über [Studio](#create-a-connection-using-studio) konfigurieren oder indem Sie die benutzerdefinierte Eigenschaft `UseSystemProxyForHypervisorTrafficOnConnectors` auf `True` setzen, wenn Sie eine Hostverbindung mit PowerShell erstellen oder aktualisieren.
Hinweis:
Wenn Ihre Umgebung einen Proxy verwendet, stellen Sie sicher, dass die SSL-Inspektion deaktiviert ist oder die SSL-Verbindung für https://workspaces-instances.*.api.aws/ unverändert bleibt.
Erstellen einer Hostverbindung, die mit dem Proxy konfiguriert ist
- 1. Öffnen Sie ein PowerShell-Fenster.
- 1. Führen Sie `asnp citrix*` aus, um die Citrix-spezifischen PowerShell-Module zu laden.
-
Führen Sie die PowerShell-Befehle aus, um den Proxy zu konfigurieren. Zum Beispiel:
$connectionName = "demo-hostingconnection" $cloudRegion = "us-east-1" $apiKey = "aaaaaaaaaaaaaaaaaaaa" $zoneUid = "00000000-0000-0000-0000-000000000000" $securePassword = Read-Host 'Please enter your secret key' -AsSecureString $connectionPath = "XDHyp:\Connections\" + $connectionName $customProperties = @" <CustomProperties xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.citrix.com/2014/xd/machinecreation"> <Property xsi:type="StringProperty" Name="UseSystemProxyForHypervisorTrafficOnConnectors" Value="True" /> </CustomProperties> "@ <!--NeedCopy--> -
Erstellen Sie eine Hosting-Verbindung. Zum Beispiel:
```
-
$connection = New-Item -Path $connectionPath `
-ConnectionType “Custom” -PluginId “AmazonWorkSpacesCoreMachineManagerFactory” -HypervisorAddress “https://workspaces-instances.$($cloudRegion).api.aws” -CustomProperties> $customProperties ` -Persist -Scope @()
-UserName $apiKey -SecurePassword $securePassword-ZoneUid $zoneUidNew-BrokerHypervisorConnection -HypHypervisorConnectionUid $connection.HypervisorConnectionUid
```
Um den Proxy für eine vorhandene Hostverbindung zu aktivieren, siehe Aktivieren des Proxys für eine vorhandene Verbindung.
Kontoübergreifende Bereitstellung
Es gibt Anwendungsfälle, in denen die Cloud Connectors in einem separaten AWS-Konto (Shared Services-Konto oder Site Components-Konto) mit IAM-Rollen platziert werden sollen, die kontoübergreifenden Zugriff (kontoübergreifende IAM-Rolle) haben, und MCS-bereitgestellte Maschinenkataloge in einem separaten sekundären AWS-Konto (Workloads-Konten), ohne dass zusätzliche Cloud Connectors in den separaten Konten erforderlich sind. Um solche Szenarien zu unterstützen, verwendet diese Funktion VPC-Peering und kontoübergreifenden Zugriff über IAM-Rollen, um die Bereitstellung über verschiedene AWS-Konten hinweg für Unternehmen zu ermöglichen, die mehrere AWS-Konten verwalten.
Mit VPC-Peering können Ihre Cloud Connectors und bereitgestellten VMs in verschiedenen Regionen oder Konten miteinander kommunizieren.
Mit kontoübergreifendem Zugriff über IAM-Rollen ermöglichen Sie dem primären Konto (Cloud Connector-Konto), eine IAM-Rolle zu übernehmen, um auf AWS-Ressourcen im sekundären Konto (Maschinenkatalog-VMs) zuzugreifen.
- Um dem Cloud Connector den Zugriff auf die Ressourcen des sekundären Kontos zu ermöglichen, erstellen Sie eine Hostverbindung, nachdem Sie die IAM-Rolle vom sekundären Konto übernommen haben.
Voraussetzungen
Richten Sie Folgendes ein, bevor Sie eine Hostverbindung für die kontoübergreifende Bereitstellung erstellen:
- Richten Sie VPC-Peering ein und konfigurieren Sie die Sicherheitsgruppen in beiden Regionen oder Konten. Siehe VPC-Peering einrichten.
- Delegieren Sie kontoübergreifenden Zugriff über IAM-Rollen. Siehe Kontoübergreifenden Zugriff über IAM-Rolle delegieren.
VPC-Peering einrichten
- Nehmen wir an, VPC A befindet sich im primären Konto (Konto A) und enthält die Cloud Connectors und Active Directory. VPC B befindet sich im sekundären Konto (Konto B), wo Sie die VMs bereitstellen möchten.
- Um eine VPC-Peering-Verbindung zwischen Konto A und Konto B einzurichten, gehen Sie wie folgt vor:
-
Erstellen Sie eine VPC-Peering-Verbindung. Siehe:
- Navigieren Sie zu Ihrer VPC A und zur Routing-Tabelle, die dem öffentlichen Subnetz zugeordnet ist.
- Klicken Sie auf Routen bearbeiten > Route hinzufügen. Fügen Sie den CIDR-Block von VPC B in der Spalte Ziel und das von Ihnen erstellte VPC-Peering in der Spalte Ziel hinzu.
- Wiederholen Sie die Schritte 2 und 3, jedoch mit den privaten Subnetzen für VPC A und VPC B (fügen Sie den CIDR-Block von VPC A hinzu). Siehe Aktualisieren Sie Ihre Routing-Tabellen für eine VPC-Peering-Verbindung.
- Navigieren Sie zur privaten Sicherheitsgruppe, die VPC A zugeordnet ist.
- Wählen Sie Aktionen und dann Eingehende Regeln bearbeiten aus.
-
Wählen Sie Regel hinzufügen aus. Wählen Sie als Typ Alle Datenströme aus und fügen Sie dann in der Quellspalte Folgendes hinzu:
- Wenn es sich um eine andere Region handelt, fügen Sie den CIDR-Block von VPC B hinzu.
- Wenn es sich um ein anderes Konto, aber die gleiche Region handelt, fügen Sie die Konto-ID und die ID der privaten Sicherheitsgruppe von VPC B, getrennt durch einen Schrägstrich, hinzu (Beispiel: 123456789012/sg-1a2b3c4d)
- Wiederholen Sie die Schritte 5 bis 7, jedoch mit der privaten Sicherheitsgruppe für VPC B (fügen Sie jedoch den CIDR-Block von VPC A oder die Konto-ID von VPC A und die ID der privaten Sicherheitsgruppe derselben Region, aber eines anderen Kontos hinzu). Siehe Aktualisieren Sie Ihre Sicherheitsgruppen, um Peer-Sicherheitsgruppen zu referenzieren.
Hinweis:
Für die Erstellung einer VPC-Peering-Verbindung fallen keine Kosten an. Während VPC-Peering innerhalb einer Availability Zone kostenlos ist, fallen Gebühren an, wenn die Datenübertragung über eine VPC-Peering-Verbindung über mehrere Availability Zones und Regionen hinweg erfolgt. Siehe Preise für eine VPC-Peering-Verbindung.
Cross-Account-Zugriff mithilfe von IAM-Rollen delegieren
Nach dem Einrichten von VPC-Peering über Konten hinweg delegieren Sie den Cross-Account-Zugriff mithilfe von IAM-Rollen.
Mit Cross-Account-Zugriff mithilfe von IAM-Rollen ermöglichen Sie dem primären Konto (Cloud Connector-Konto), eine IAM-Rolle zu übernehmen, um auf AWS-Ressourcen im sekundären Konto (Maschinenkatalog-VMs) zuzugreifen.
- Um auf kontoübergreifende Ressourcen zuzugreifen, führen Sie die folgenden Schritte aus:
Beachten Sie:
Angenommen, VPC A befindet sich im primären Konto (Konto A) und verfügt über den Cloud Connector und Active Directory. VPC B befindet sich im sekundären Konto (Konto B), wo Sie die VMs bereitstellen möchten.
- Richten Sie VPC-Peering über Konten hinweg mit den zuvor genannten Schritten ein.
-
- Erstellen Sie eine IAM-Rolle und -Richtlinie in Konto B mit minimalen Citrix IAM-Berechtigungen. Siehe IAM-Tutorial: Delegieren des Zugriffs über AWS-Konten hinweg mithilfe von IAM-Rollen. Nehmen wir an, der ARN dieser Rolle ist “arn:aws:iam::5678:role/citrix-role”.
- Fügen Sie die Vertrauensrichtlinie zur Rolle “arn:aws:iam::5678:role/citrix-role” hinzu, damit der Zugriff durch die Rolle “arn:aws:iam::1234:role/primary-account-citrix-role” von Konto A gemäß Kontoübergreifender Ressourcenzugriff in IAM erlaubt ist.
- Erstellen Sie die IAM-Rolle und -Richtlinie in Konto A mit dem zuvor genannten Namen “primary-account-citrix role”, die die IAM-Rolle übernehmen und die IAM-Rolle von Konto B (arn:aws:iam::5678:role/citrix-role) weitergeben kann.
- Weisen Sie die Rolle “arn:aws:iam::1234:role/primary-account-citrix-role” allen Cloud Connectors in Konto A zu.
Cloud Connectors können nun die Rolle von Konto B (“arn:aws:iam::5678:role/citrix-role”) übernehmen.
Hostverbindung für kontoübergreifende Bereitstellung erstellen
- Erstellen Sie eine Hostverbindung im sekundären Konto (Konto B), wo Sie die VMs bereitstellen möchten. Dies ermöglicht Cloud Connectors von Konto A, auf die Ressourcen in Konto B zuzugreifen, nachdem sie die Rolle von Konto B übernommen haben.
Verwenden Sie PowerShell-Befehle, um die Hostverbindung zu erstellen und die folgenden zwei benutzerdefinierten Eigenschaften hinzuzufügen:
- `CrossAccountRoleArn`: Wenn Sie die Eigenschaft `CrossAccountRoleArn` nicht angeben, wird die reguläre Hostverbindung erstellt. In diesem Fall wird `MaximumAssumeRoleDurationInSeconds` ignoriert, selbst wenn sie angegeben wird.
- `MaximumAssumeRoleDurationInSeconds`: `DurationInSeconds` muss zwischen 900 Sekunden und 3600 Sekunden liegen. Der Standardwert ist 900 Sekunden. Wenn Sie einen Wert angeben, der größer als 3600 ist, wird `DurationInSeconds` auf 3600 gesetzt.
Beispiel:
$connectionName = "cross-account-conn"
$cloudRegion = "us-east-1"
$apiKey = "role_based_auth"
$secretKey = "role_based_auth"
$zoneUid = "xxxxxx"
$secureKey = (ConvertTo-SecureString -String $secretKey -AsPlainText -Force)
$connectionPath = "XDHyp:\Connections\" + $connectionName
$customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <Property xsi:type="StringProperty" Name="CrossAccountRoleArn" Value="arn:aws:iam::5678:role/citrix-role" /><Property xsi:type="StringProperty" Name="MaximumAssumeRoleDurationInSeconds" Value="3600" />
- "</CustomProperties>'
$connection = New-Item -Path $connectionPath -ConnectionType "AmazonWorkSpacesCoreMachineManagerFactory" -HypervisorAddress "https://workspaces-instances.$($cloudRegion).api.aws" -Persist -Scope @() -UserName $apiKey -SecurePassword $secureKey -ZoneUid $zoneUid -CustomProperties $customProperties
New-BrokerHypervisorConnection -HypHypervisorConnectionUid $connection.HypervisorConnectionUid
<!--NeedCopy-->
- Nachdem die Hostverbindung erstellt wurde, erstellen Sie Hosting-Einheiten mithilfe von Studio oder PowerShell. Wählen Sie jedoch VPC und Netzwerke aus.
Cloud Connectors für AWS-API-Anfragen umgehen
In Amazon WorkSpaces Core Managed Instance (MI)-Umgebungen befindet sich das Citrix Machine Creation Services (MCS)-Plugin typischerweise auf dem Delivery Controller und leitet AWS-API-Anfragen über den Citrix Cloud Connector mittels eines Proxys weiter.
Sie können Hostverbindungen so konfigurieren, dass der Cloud Connector für AWS-API-Anfragen umgangen wird. Wenn diese Funktion aktiviert ist, führt das Plugin API-Aufrufe – einschließlich derer für Bereitstellung und Energieverwaltung – direkt vom DDC zu AWS-Diensten (wie Amazon EC2, EBS und WorkSpaces-Instanzen) durch, wodurch die Abhängigkeit von der Weiterleitung über den Cloud Connector mittels eines Proxys entfällt.
Vorteile
- Reduzierung der AWS-API-Aufrufabhängigkeit von Cloud Connectors: Das Entfernen der AWS-API-Abhängigkeit vom Cloud Connector ist ein wichtiger Schritt für Kunden, die ihren On-Premises- oder Cloud-Infrastruktur-Footprint reduzieren möchten.
- Reduzierter Ressourcenverbrauch: Weniger Datenverkehr über den Cloud Connector reduziert die Rechenanforderungen für die Connector-VM, was potenziell zu Kosteneinsparungen führt.
- Betriebliche Flexibilität: Bietet höhere Verfügbarkeit durch die Beseitigung eines potenziellen Fehlerpunkts (des Cloud Connector/NGS-Proxy-Pfads) für kritische Energieverwaltungs- und Bereitstellungsaufgaben.
Einschränkungen und Überlegungen
Bevor Sie diese Funktion aktivieren, beachten Sie die folgenden Anforderungen und Einschränkungen:
- Authentifizierung: Rollenbasierte Authentifizierung (IAM-Rollen) wird nicht unterstützt, wenn der Cloud Connector umgangen wird. Sie müssen die Einrichtung nur für IAM-Benutzerzugriffsschlüssel konfigurieren.
- Umfang der Umgebung: Diese Funktion ist exklusiv für Amazon WorkSpaces Core Managed Instances (MI). Sie wird für Standard-AWS-EC2-Hostverbindungen nicht unterstützt.
- Netzwerkanforderungen: Der DDC muss einen direkten Netzwerkpfad zu den AWS-Dienstendpunkten haben.
- Zustand des Ressourcenstandorts: Wenn ein Cloud Connector ursprünglich am Ressourcenstandort bereitgestellt wurde, muss er eingeschaltet bleiben. Nicht-MCS-Komponenten und Integritätsprüfungen sind weiterhin vom Cloud Connector abhängig, falls dieser vorhanden ist.
- Nicht unterstützte Funktionen:
- Kontoübergreifende Bereitstellung
- System-Proxy-Nutzung
- Connector-Anforderungen: Obwohl diese Funktion die API-Abhängigkeit beseitigt, sind weitere Konfigurationen erforderlich, um Abhängigkeiten von Cloud Connectors zu reduzieren (wobei die Anforderungen an Cloud Connectors nicht auf die hier aufgeführten beschränkt sein müssen):
- Domänenbeitritt: Verwendung von nicht in die Domäne eingebundenen oder Microsoft Entra hybrid eingebundenen Maschinen.
- VDA-Registrierung: Aktivierung von Rendezvous V2 (direkte DDC-zu-VDA-Kommunikation über WebSockets) für die VDA-Registrierung.
Hostverbindung mit API-Bypass erstellen
Beim Erstellen einer Hostverbindung in der vollständigen Konfiguration (Studio) können Sie jetzt Amazon WorkSpaces Core-Ressourcenstandorte auswählen, selbst wenn an diesem Standort keine Cloud Connectors vorhanden sind.
Um den Bypass über PowerShell zu aktivieren, verwenden Sie die benutzerdefinierte Eigenschaft BypassConnectorForAwsApiRequests.
PowerShell-Beispiel:
$custProp = '<CustomProperties xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.citrix.com/2014/xd/machinecreation">
<Property xsi:type="StringProperty" Name="BypassConnectorForAwsApiRequests" Value="true" />
</CustomProperties>'
$connectionName = "MyWSCConnection"
$cloudRegion = "us-east-1"
$apiKey = "YOUR_IAM_ACCESS_KEY"
$zoneUid = (Get-ConfigZone | Where-Object {$_.Name -eq "MyResourceLocation"}).Uid
$securePassword = Read-Host 'Enter your IAM Secret Key' -AsSecureString
$connectionPath = "XDHyp:\Connections\" + $connectionName
$connection = New-Item -Path $connectionPath `
-ConnectionType "Custom" `
-PluginId "AmazonWorkSpacesCoreMachineManagerFactory" `
-HypervisorAddress "https://workspaces-instances.$($cloudRegion).api.aws" `
-Persist -Scope @() `
-CustomProperties $custProp `
-UserName $apiKey -SecurePassword $securePassword `
-ZoneUid $zoneUid
New-BrokerHypervisorConnection -HypHypervisorConnectionUid $connection.HypervisorConnectionUid
<!--NeedCopy-->
Bestehende Verbindungen verwalten
Sie können die Bypass-Funktion für bestehende Hostverbindungen aktivieren oder deaktivieren.
- Aktivieren bei bestehenden Verbindungen: Sie können die benutzerdefinierten Eigenschaften einer bestehenden Verbindung so ändern, dass sie
BypassConnectorForAwsApiRequests = trueenthalten. - Deaktivieren: Wenn die Funktion deaktiviert ist, leitet der DDC AWS-API-Aufrufe wieder über den Cloud Connector via NGS-Proxy weiter. Beachten Sie, dass dies einen funktionsfähigen Cloud Connector und einen NGS-Proxy-Pfad am Ressourcenstandort erfordert.
Fehlerbehebung
Wenn Sie versuchen, die Bypass-Eigenschaft unter nicht unterstützten Bedingungen zu aktivieren, gibt das System einen Validierungsfehler zurück:
-
IAM-Rollen/Cross-Account/Proxy: Wenn die Funktion zusammen mit IAM-Rollen, Cross-Account-Bereitstellung oder System-Proxys aktiviert wird, schlägt der Befehl
New-Itemfehl mit:AmazonWorkSpacesCoreException: Bypassing the Cloud Connector For AWS API requests is not supported for IAM roles, Cross-Account provisioning and System Proxy. <!--NeedCopy--> -
Nicht unterstützter Verbindungstyp: Wenn die Funktion auf eine Standard-Amazon EC2 (AWS)-Verbindung angewendet wird, schlägt das System fehl mit:
AmazonWorkSpacesCoreException: Bypassing the Cloud Connector For AWS API requests is not supported for EC2 host connection. <!--NeedCopy-->
Verbindung bearbeiten
Sie können eine bestehende Hostverbindung bearbeiten, um:
- Die Option zum Bereitstellen von IAM-Berechtigungen für Citrix zur Ressourcenverwaltung zu ändern
- Die maximale Anzahl gleichzeitiger Aktionen (oder gleichzeitiger Maschinen) pro Hostverbindung zu ändern
- Den Geltungsbereich zu ändern.
- Die maximale Anzahl von Sicherheitsgruppen pro Elastic Network Interface (ENI) mithilfe eines PowerShell-Befehls zu konfigurieren
- Den Proxy zu aktivieren, um eine sichere Umgebung für AWS-verwalteten Datenverkehr zu schaffen
Optionen zum Bereitstellen von IAM-Berechtigungen bearbeiten
- Klicken Sie mit der rechten Maustaste auf eine bestehende Amazon WorkSpaces Core-Verbindung.
- Klicken Sie auf der Seite Verbindungseigenschaften auf Einstellungen bearbeiten.
- Wählen Sie eine der Optionen zum Bereitstellen von IAM-Berechtigungen für Citrix zur Ressourcenverwaltung aus. Geben Sie die erforderlichen Details ein und klicken Sie auf Speichern.
Maximale Anzahl gleichzeitiger Aktionen ändern
Wenn Sie Hostverbindungen in Studio für Amazon WorkSpaces Core Managed Instances erstellen, werden die folgenden Standardwerte angezeigt:
| Option | Absolut | Prozentsatz |
|---|---|---|
| Gleichzeitige Aktionen (alle Typen) | 125 | 100 |
| Maximale neue Aktionen pro Minute | 150 | n. z. |
| Maximale gleichzeitige Bereitstellungsvorgänge | 150 | n. z. |
MCS unterstützt standardmäßig 150 maximale gleichzeitige Bereitstellungsvorgänge.
Sie können diese Werte konfigurieren, indem Sie im Citrix Studio den Abschnitt Erweitert auf dem Bildschirm Verbindung bearbeiten aufrufen:
Alternativ können Sie das Remote PowerShell SDK verwenden, um die maximale Anzahl gleichzeitiger Vorgänge für optimale Einstellungen in Ihrer Umgebung festzulegen.
Verwenden Sie die benutzerdefinierte PowerShell-Eigenschaft MaximumConcurrentProvisioningOperations, um die maximale Anzahl gleichzeitiger AWS-Bereitstellungsvorgänge anzugeben.
Vor der Konfiguration:
- Stellen Sie sicher, dass Sie das PowerShell SDK für Cloud installiert haben.
- Beachten Sie, dass der Standardwert für
MaximumConcurrentProvisioningOperations150 beträgt.
Führen Sie die folgenden Schritte aus, um den Wert von MaximumConcurrentProvisioningOperations anzupassen:
- Öffnen Sie ein PowerShell-Fenster.
- Führen Sie
asnp citrix*aus, um die Citrix-spezifischen PowerShell-Module zu laden. - Geben Sie
cd xdhyp:\Connections\ein. - Geben Sie
direin, um die Verbindungen aufzulisten. -
Ändern oder initialisieren Sie die Zeichenfolge der benutzerdefinierten Eigenschaften:
- Wenn die Zeichenfolge der benutzerdefinierten Eigenschaften einen Wert hat, kopieren Sie die benutzerdefinierten Eigenschaften in den Editor. Ändern Sie anschließend die Eigenschaft
MaximumConcurrentProvisioningOperationsauf Ihren bevorzugten Wert. Sie können einen Wert zwischen 1 und 1000 eingeben.
Zum Beispiel:
<Property xsi:type="IntProperty" Name="MaximumConcurrentProvisioningOperations" Value="xyz"/>.- Wenn die Zeichenfolge der benutzerdefinierten Eigenschaften leer oder null ist, müssen Sie die Zeichenfolge initialisieren, indem Sie die richtige Syntax sowohl für das Schema als auch für die Eigenschaft
MaximumConcurrentProvisioningOperationseingeben.
- Wenn die Zeichenfolge der benutzerdefinierten Eigenschaften einen Wert hat, kopieren Sie die benutzerdefinierten Eigenschaften in den Editor. Ändern Sie anschließend die Eigenschaft
-
Fügen Sie im PowerShell-Fenster die geänderten benutzerdefinierten Eigenschaften aus dem Editor ein und weisen Sie den geänderten benutzerdefinierten Eigenschaften eine Variable zu. Wenn Sie die benutzerdefinierten Eigenschaften 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>' <!--NeedCopy-->Diese Zeichenfolge setzt die Eigenschaft
MaximumConcurrentProvisioningOperationsauf 100. In der Zeichenfolge der benutzerdefinierten Eigenschaften müssen Sie die EigenschaftMaximumConcurrentProvisioningOperationsauf einen Wert setzen, der Ihren Anforderungen entspricht. - Geben Sie
Get-XDAuthenticationein, wodurch Sie zur Eingabe Ihrer Anmeldeinformationen aufgefordert werden. - Führen Sie
$cred = Get-Credentialaus, wodurch Sie möglicherweise nur zur Eingabe eines Kennworts (oder eines Namens und Kennworts) aufgefordert werden. Möglicherweise werden Sie auch nach der Anwendungs-ID und dem zugehörigen Geheimnis gefragt. Bei Verbindungen, die rollenbasierte Authentifizierung verwenden, ist role_based_auth sowohl der Name als auch das Kennwort. Andernfalls geben Sie die AWS-API-ID und das Geheimnis ein. - Führen Sie
set-item -PSPath 'XDHyp:\Connections<connection-name>' -CustomProperties $customProperties -username $cred.username -Securepassword $cred.passwordaus. Sie müssen den <Verbindungsnamen> auf den Namen der Verbindung festlegen. - Geben Sie
direin, um die aktualisierte CustomProperties-Zeichenfolge zu überprüfen.
Sicherheitsgruppen pro Netzwerkschnittstelle konfigurieren
Beim Bearbeiten einer Hostverbindung können Sie jetzt die maximale Anzahl von Sicherheitsgruppen pro elastischer Netzwerkschnittstelle (ENI) mithilfe eines PowerShell-Befehls konfigurieren. Informationen zu den Kontingentwerten für AWS-Sicherheitsgruppen finden Sie unter Sicherheitsgruppen.
So konfigurieren Sie Sicherheitsgruppen pro Netzwerkschnittstelle:
- Öffnen Sie ein PowerShell-Fenster.
- Führen Sie
asnp citrix*aus, um die Citrix-spezifischen PowerShell-Module zu laden. - Führen Sie
cd xdhyp:\Connections\aus. - Führen Sie
diraus, um die Verbindungen aufzulisten. -
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
AwsMaxENISecurityGroupLimitfestlegen, wird der Standardwert 5 verwendet.
Proxy für eine vorhandene Verbindung aktivieren
- Öffnen Sie ein PowerShell-Fenster.
-
Führen Sie die folgenden Befehle aus.
Add-PSSnapin citrix*. cd XDHyp:\Connections\ dir <!--NeedCopy--> - Kopieren Sie die
CustomPropertiesvon der Verbindung in einen Editor und fügen Sie die Eigenschaftseinstellung<Property xsi:type="StringProperty" Name="UseSystemProxyForHypervisorTrafficOnConnectors" Value="True" />an dieCustomPropertiesan, um den Proxy zu aktivieren. -
Weisen Sie im PowerShell-Fenster den geänderten benutzerdefinierten Eigenschaften eine Variable zu. Zum Beispiel:
$customProperty = '<CustomProperties xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.citrix.com/2014/xd/machinecreation"> <Property xsi:type="StringProperty" Name="UseSystemProxyForHypervisorTrafficOnConnectors" Value="True" /> </CustomProperties>' <!--NeedCopy--> - Geben Sie
Get-XDAuthenticationein, wodurch Sie zur Eingabe Ihrer Anmeldeinformationen aufgefordert werden. -
Führen Sie
$cred = Get-Credentialaus, wodurch Sie möglicherweise nur zur Eingabe eines Kennworts (oder eines Namens und Kennworts) aufgefordert werden. Möglicherweise werden Sie auch nach der Anwendungs-ID und dem zugehörigen Geheimnis gefragt. Bei Verbindungen, die rollenbasierte Authentifizierung verwenden, istrole_based_authsowohl der Name als auch das Kennwort. Andernfalls geben Sie die AWS-API-ID und das Geheimnis ein. - Führen Sie
set-item -PSPath 'XDHyp:\Connections<connection-name>' -CustomProperties $customProperties -username $cred.username -Securepassword $cred.passwordaus. Sie müssen den<Verbindungsnamen>auf den Namen der Verbindung festlegen. - Geben Sie
direin, um die aktualisierteCustomProperties-Zeichenfolge zu überprüfen.
Service-Endpunkt-URL
Standard-Zonen-Service-Endpunkt-URL
Wenn Sie MCS verwenden, wird eine neue Amazon WorkSpaces Core Managed Instances-Verbindung mit einem API-Schlüssel und einem API-Geheimnis hinzugefügt. Mit diesen Informationen, zusammen mit dem authentifizierten Konto, fragt MCS AWS nach den unterstützten Regionen und Zonen unter Verwendung von AWS EC2- und Amazon WorkSpaces Core Managed Instances-API-Aufrufen ab. Die Abfrage erfolgt über eine Workspace Instances Service Endpoint URL https://workspaces-instances.us-east-1.api.aws/ und einen EC2 Service Endpoint https:/ec2.us-east-1.api.aws/.
Hinweis:
Stellen Sie sicher, dass https://workspaces-instances.us-east-1.api.aws/ erreichbar ist.
Nicht-Standard-Service-Endpunkt-URL
-
Es kann Situationen geben, in denen Sie die automatisch gewählte AWS Service Endpoint URL für die Verbindung möglicherweise nicht benötigen. In solchen Fällen können Sie das Citrix Cloud SDK und PowerShell verwenden, um eine Verbindung mit einer nicht-standardmäßigen Service Endpoint URL zu erstellen. Zum Beispiel, um eine Verbindung mit der Service Endpoint URL
https://ec2.cn-north-1.amazonaws.com.cnzu erstellen: -
- Richten Sie den von AWS gehosteten Cloud Connector ein und stellen Sie sicher, dass er Konnektivität hat.
-
- 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-->
-
Suchen Sie die ZoneUid des neu erstellten Cloud Connectors und geben Sie sie in die folgenden PowerShell-Befehle ein. Ersetzen Sie die kursiv gedruckten Elemente durch die entsprechenden Werte.
PS C:\> $hyp= New-Item -Path xdhyp:\Connections -ZoneUid ZoneUid -Name “My New Connection” -ConnectionType "Custom" -HypervisorAddress @("https://workspaces-instances.$($cloudRegion).api.aws")-PluginId "AmazonWorkSpacesCoreMachineManagerFactory" -UserName “APIkey” -Password “API Secret” -Persist PS C:\> New-BrokerHypervisorConnection -HypHypervisorConnectionUid $hyp. HypervisorConnectionUid <!--NeedCopy--> - Aktualisieren Sie die Registerkarte Hosting, um zu überprüfen, ob die Verbindung erstellt wurde.
- Fügen Sie einen Ressourcenstandort mit der neuen Verbindung hinzu.
Erforderliche AWS-Berechtigungen
Dieser Abschnitt enthält die vollständige Liste der AWS-Berechtigungen. Verwenden Sie den vollständigen Satz von Berechtigungen, wie in diesem Abschnitt angegeben, damit die Funktionalität korrekt funktioniert.
Hinweis:
Die Berechtigung
iam:PassRolewird nur benötigt, wenn IAM-Rollen für Citrix zur Ressourcenverwaltung verwendet werden.
Erstellen einer Hostverbindung
Eine neue Hostverbindung wird unter Verwendung der von AWS erhaltenen Informationen hinzugefügt.
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:DescribeAvailabilityZones",
"ec2:DescribeSubnets",
"ec2:DescribeVpcs",
"ec2:DescribeRegions",
"workspaces-instances:*"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
<!--NeedCopy-->
Energieverwaltung von VMs
VMs werden ein- oder ausgeschaltet.
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:DescribeInstances",,
"ec2:StartInstances",
"ec2:StopInstances",
"ec2:RebootInstances",
"ec2:DescribeInstanceStatus"
],
"Effect": "Allow",
"Resource": "*"
},
{
"Action": [
"workspaces-instances:*"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
<!--NeedCopy-->
Erstellen, Aktualisieren oder Löschen von VMs
Ein Maschinenkatalog wird erstellt, aktualisiert oder gelöscht, wobei VMs als AWS-Instanzen bereitgestellt werden.
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:AttachVolume",
"ec2:AssociateIamInstanceProfile",
"ec2:AuthorizeSecurityGroupEgress",
"ec2:RevokeSecurityGroupEgress",
"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:DescribeInstanceStatus",
"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:CreateSecurityGroup",
"ec2:DeleteSecurityGroup"
],
"Effect": "Allow",
"Resource": "*"
},
{
"Action": [
"ebs:StartSnapshot",
"ebs:GetSnapshotBlock",
"ebs:PutSnapshotBlock",
"ebs:CompleteSnapshot",
"ebs:ListSnapshotBlocks",
"ebs:ListChangedBlocks",
"ec2:CreateSnapshot"
],
"Effect": "Allow",
"Resource": "*"
},
{
"Action": [
"workspaces-instances:*"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
<!--NeedCopy-->
Hinweis:
- Der EC2-Abschnitt bezüglich SecurityGroups wird nur benötigt, wenn während der Katalogerstellung eine Isolation Security Group für die Vorbereitungs-VM erstellt werden muss. Sobald dies geschehen ist, sind diese Berechtigungen nicht mehr erforderlich.
Direkter Festplatten-Upload und -Download
Die folgenden Berechtigungen müssen der Richtlinie hinzugefügt werden:
ebs:StartSnapshotebs:GetSnapshotBlockebs:PutSnapshotBlockebs:CompleteSnapshotebs:ListSnapshotBlocksebs:ListChangedBlocksec2:CreateSnapshotec2:DeleteSnapshotec2:DescribeLaunchTemplates
EBS-Verschlüsselung erstellter Volumes
EBS kann neu erstellte Volumes automatisch verschlüsseln, wenn das AMI verschlüsselt ist oder EBS so konfiguriert ist, dass alle neuen Volumes verschlüsselt werden. Um die Funktionalität zu implementieren, 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 nach Ermessen des Benutzers auf bestimmte Schlüssel beschränkt werden, indem ein Ressourcen- und Bedingungsblock (
ResourceundCondition) hinzugefügt wird. Zum 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 gesamte Standard-Schlüsselrichtlinie für KMS-Schlüssel, die erforderlich ist, um dem Konto die Verwendung von IAM-Richtlinien zur Delegierung von Berechtigungen für alle Aktionen (kms:*) auf dem KMS-Schlüssel zu ermöglichen.
{
"Sid": "Enable IAM policies",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::111122223333:root"
},
"Action": "kms:",
"Resource": ""
}
<!--NeedCopy-->
Weitere Informationen finden Sie in der offiziellen Dokumentation des AWS Key Management Service.
IAM-rollenbasierte Authentifizierung
Die folgenden Berechtigungen werden hinzugefügt, um die rollenbasierte Authentifizierung zu unterstützen.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::*:role/*"
}
]
}
<!--NeedCopy-->
Minimale IAM-Berechtigungsrichtlinie
Das folgende JSON kann für alle derzeit unterstützten Funktionen verwendet werden. Mit dieser Richtlinie können Sie Hostverbindungen erstellen, VMs erstellen, aktualisieren oder löschen und die Energieverwaltung durchführen. Die Richtlinie kann auf die Benutzer angewendet werden, wie in den Abschnitten IAM-Berechtigungen definieren erläutert, oder Sie können auch die rollenbasierte Authentifizierung verwenden, indem Sie bei der Konfiguration einer Hostverbindung IAM-Rolle verwenden auswählen.
Wichtig:
Um IAM-Rollen für Citrix zur Ressourcenverwaltung zu verwenden, konfigurieren Sie zuerst die gewünschte IAM-Rolle auf der Cloud Connector EC2-Instanz, wenn Sie den Cloud Connector einrichten. Fügen Sie über Citrix Studio die Hosting-Verbindung hinzu und wählen Sie die Option IAM-Rolle verwenden. Eine Hosting-Verbindung mit diesen Einstellungen verwendet dann die rollenbasierte Authentifizierung.
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:AttachVolume",
"ec2:AssociateIamInstanceProfile",
"ec2:AuthorizeSecurityGroupEgress",
"ec2:RevokeSecurityGroupEgress",
"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:DescribeInstanceStatus",
"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:CreateSecurityGroup",
"ec2:DeleteSecurityGroup"
],
"Effect": "Allow",
"Resource": "*"
},
{
"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/*"
},
{
"Effect": "Allow",
"Action": [
"workspaces-instances:*"
],
"Resource": "*"
}
]
}
<!--NeedCopy-->
Hinweis:
- Der EC2-Abschnitt bezüglich SecurityGroups wird nur benötigt, wenn während der Katalogerstellung eine Isolation Security Group für die Vorbereitungs-VM erstellt werden muss. Sobald dies geschehen ist, sind diese Berechtigungen nicht mehr erforderlich.
- Der KMS-Abschnitt ist nur erforderlich, wenn die EBS-Volume-Verschlüsselung verwendet wird.
- Der Berechtigungsabschnitt
iam:PassRolewird nur benötigt, wenn IAM-Rollen für Citrix zur Ressourcenverwaltung verwendet werden.- Spezifische Berechtigungen auf Ressourcenebene können anstelle des vollständigen Zugriffs hinzugefügt werden, basierend auf Ihren Anforderungen und Ihrer Umgebung. Weitere Details finden Sie in den AWS-Dokumenten Demystifying EC2 Resource-Level Permissions und Access management for AWS resources.
- Verwenden Sie die Berechtigungen
ec2:CreateNetworkInterfaceundec2:DeleteNetworkInterfacenur, wenn Sie die Volume-Worker-Methode verwenden.
Nächste Schritte
- Informationen zum Erstellen vorbereiteter Images finden Sie unter Erstellen eines vorbereiteten Images für Amazon WorkSpaces Core Managed Instances
Weitere Informationen
- Verbindungen und Ressourcen erstellen und verwalten
- AWS-Virtualisierungsumgebungen
- Beispiele für Amazon WorkSpaces Core GitHub PowerShell finden Sie unter citrix-mcs-sdk-samples-Amazon WorkSpaces Core.