Connexion à AWS EC2
Créer et gérer des connexions et des ressources décrit les assistants qui créent une connexion. Les informations suivantes couvrent les détails spécifiques aux environnements cloud AWS.
Prérequis
Effectuez les opérations suivantes avant de créer une connexion à AWS EC2 :
- Terminez la configuration de votre AWS en tant qu’emplacement de ressources. Consultez Environnements de virtualisation AWS.
- Définissez la stratégie d’autorisations IAM de l’utilisateur ou du rôle IAM pour que Citrix puisse gérer les ressources AWS en votre nom.
Définir les autorisations IAM
Avant de créer une connexion d’hôte, une stratégie d’autorisations IAM doit être correctement définie pour un utilisateur ou un rôle IAM qui accorde à Citrix les autorisations appropriées pour provisionner et gérer les ressources de votre compte AWS en votre nom. Utilisez les informations de cette section pour définir les autorisations IAM pour Citrix DaaS sur AWS. Le service IAM d’Amazon permet aux comptes d’avoir plusieurs utilisateurs, qui peuvent être organisés en groupes. Ces utilisateurs peuvent posséder différentes autorisations pour contrôler leur capacité à effectuer des opérations associées au compte. Pour plus d’informations sur les autorisations IAM, consultez la référence de la stratégie JSON IAM.
Pour appliquer la stratégie d’autorisations IAM à un nouveau groupe d’utilisateurs :
- Connectez-vous à la console de gestion AWS et sélectionnez le service IAM dans la liste déroulante.
- Sélectionnez Create a New Group of Users (Créer un nouveau groupe d’utilisateurs).
- Saisissez un nom pour le nouveau groupe d’utilisateurs et sélectionnez Continue (Continuer).
- Sur la page Permissions (Autorisations), choisissez Custom Policy (Stratégie personnalisée), puis Select (Sélectionner).
- Saisissez un nom pour la stratégie d’autorisations.
- Dans la section Policy Document (Document de stratégie), entrez les autorisations pertinentes.
Après avoir entré les informations de stratégie, sélectionnez Continue (Continuer) pour terminer l’application de la stratégie d’autorisations IAM au groupe d’utilisateurs. Les utilisateurs du groupe ne sont autorisés à effectuer que les actions requises pour Citrix DaaS.
Important :
Utilisez le texte de stratégie fourni dans l’exemple de cet article pour répertorier les actions qu’un Citrix DaaS utilise pour effectuer des actions au sein d’un compte AWS sans restreindre ces actions à des ressources spécifiques. Citrix vous recommande d’utiliser l’exemple à des fins de test. Pour les environnements de production, vous pouvez choisir d’ajouter d’autres restrictions sur les ressources.
Ajouter des autorisations IAM
Ajoutez les autorisations dans la section IAM de la console de gestion AWS :
- Dans le panneau Summary (Résumé), sélectionnez l’onglet Permissions (Autorisations).
-
Sélectionnez Add permissions (Ajouter des autorisations).

-
Dans l’écran Add Permissions to (Ajouter des autorisations à), accordez les autorisations :

-
Dans la section JSON, incluez les autorisations AWS requises pour votre environnement.

Créer une connexion
Vous pouvez créer une connexion à Amazon EC2 à l’aide de :
Remarque :
Vérifiez les restrictions de votre serveur proxy ou de votre pare-feu et assurez-vous que l’adresse suivante est joignable :
https://*.amazonaws.com. Assurez-vous également que toutes les adresses mentionnées dans Connectivité du service Citrix Gateway sont joignables.Si celles-ci ne sont pas joignables, cela pourrait entraîner un échec lors de la création ou de la mise à jour de la connexion d’hôte.
Créer une connexion à l’aide de Studio
- Accédez à la page Hosting > Add Connection and Resources (Hébergement > Ajouter une connexion et des ressources).
-
Sur la page Connection (Connexion), suivez ces étapes pour configurer la connexion :
- Sélectionnez Create a new connection (Créer une nouvelle connexion).
- Dans Zone, sélectionnez l’emplacement de ressources que vous avez configuré pour votre environnement AWS.
- Sélectionnez Amazon EC2 comme type de connexion.
-
Sélectionnez l’une des méthodes pour provisionner les ressources :
- Si vous sélectionnez Use this AWS account to provision resources (Utiliser ce compte AWS pour provisionner des ressources), sélectionnez ensuite Use IAM user access key (Utiliser la clé d’accès de l’utilisateur IAM) ou Use IAM role (Utiliser le rôle IAM). Pour la clé d’accès de l’utilisateur IAM, fournissez votre clé API et votre clé secrète pour l’utilisateur IAM qui dispose de la stratégie d’autorisations IAM appropriée pour que Citrix puisse gérer les ressources de votre compte AWS. Pour le rôle IAM, assurez-vous d’avoir attribué un rôle IAM à l’instance Citrix Cloud Connector avec la stratégie d’autorisations IAM appropriée pour que Citrix puisse gérer les ressources de votre compte AWS. Pour plus d’informations, consultez le guide d’authentification basé sur les rôles.
- Si vous sélectionnez Use cross-account access to provision resources (Utiliser l’accès inter-comptes pour provisionner des ressources), fournissez l’ARN du rôle IAM dans le compte B que les Cloud Connectors (ou Delivery Controllers) du compte A doivent assumer et effectuer les opérations de provisionnement.
- Saisissez un nom de connexion et cliquez sur Next (Suivant).
- Sur la page Virtual Machine Location (Emplacement de la machine virtuelle), spécifiez l’emplacement où les machines virtuelles doivent être provisionnées. Sélectionnez la région cloud, le VPC et la zone de disponibilité pour la création de nouvelles machines virtuelles.
-
Sur la page Network (Réseau) :
- Saisissez un nom pour les ressources que vous avez sélectionnées précédemment dans la zone de disponibilité.
- Sélectionnez un ou plusieurs sous-réseaux dans le VPC que vous avez configuré dans le menu précédent.
- Cliquez sur les pages restantes jusqu’à la page Summary (Résumé).
- Cliquez sur Finish (Terminer) pour créer la connexion d’hôte à Amazon EC2.
Considérations importantes
Lorsque vous créez une connexion à l’aide de Studio :
- Définissez les autorisations IAM appropriées pour que Citrix gère vos ressources AWS.
- Si vous utilisez une clé d’accès utilisateur IAM pour que Citrix gère vos ressources AWS, vous devez fournir les valeurs de clé API et de clé secrète. Vous pouvez exporter le fichier de clé contenant ces valeurs depuis AWS, puis les importer. Vous devez également fournir la région, la zone de disponibilité, le nom du VPC, les adresses de sous-réseau, le nom de domaine, les noms des groupes de sécurité et les informations d’identification.
- Si vous utilisez un rôle IAM pour que Citrix gère vos ressources AWS, vous devez vous assurer d’attribuer un rôle avec les autorisations IAM appropriées à tous vos Cloud Connector(s). Consultez le guide d’authentification basée sur les rôles pour plus d’informations.
- Le fichier d’informations d’identification du compte AWS racine (récupéré depuis la console AWS) n’est pas formaté de la même manière que les fichiers d’informations d’identification téléchargés pour les utilisateurs AWS standard. Par conséquent, Citrix DaaS ne peut pas utiliser le fichier pour renseigner les champs de clé API et de clé secrète. Assurez-vous d’utiliser des fichiers d’informations d’identification AWS Identity Access Management (IAM).
Créer une connexion à l’aide de PowerShell
- Ouvrez une fenêtre PowerShell.
- Exécutez
asnp citrix*pour charger les modules PowerShell spécifiques à Citrix. -
Exécutez les commandes suivantes. Voici un exemple :
$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 "<name of the connection>" -HypervisorAddress " "@("https://ec2.cn-north-1.amazonaws.com.cn") -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-->
Remarque :
Pour créer une connexion à l’aide de l’authentification basée sur les rôles, spécifiez apiKey et apiSecret comme
role_based_auth.
Limitation
Si vous modifiez le nom d’un Virtual Private Cloud (VPC) AWS dans la console AWS, l’unité d’hébergement existante dans Citrix Cloud™ est interrompue. Lorsque l’unité d’hébergement est interrompue, vous ne pouvez pas créer de catalogues ni ajouter de machines aux catalogues existants. Pour résoudre le problème, rétablissez le nom d’origine du VPC AWS.
Configuration de proxy améliorée pour la connexion d’hôte AWS
La connexion d’hôte AWS peut lire la valeur du proxy système WinHTTP configurée lors de l’installation du Cloud Connector si vous définissez la propriété personnalisée UseSystemProxyForHypervisorTrafficOnConnectors sur true lors de la création ou de la mise à jour d’une connexion d’hôte à l’aide de PowerShell.
Avantages
- Simplifie la configuration du proxy pour les connexions d’hôte AWS.
- Réduit le besoin de configuration PowerShell manuelle des valeurs de serveur et de port.
- Assure une utilisation cohérente du proxy entre le Cloud Connector et les connexions d’hôte.
- Améliore le taux de réussite des appels d’API qui nécessitent un accès proxy.
- Diminue les demandes de support liées à la configuration du proxy.
Prérequis
Avant de définir la propriété personnalisée lors de la création de la connexion d’hôte à l’aide de PowerShell, assurez-vous de configurer le proxy WinHTTP sur le Cloud Connector.
Créer une nouvelle connexion avec proxy automatique
- Ouvrez PowerShell.
-
Ajoutez les composants logiciels enfichables Citrix :
Add-PSSnapin citrix* <!--NeedCopy--> -
Définissez les variables pour la connexion.
$hypType = "AWS" #################################################################################### The following items need to be set based on the installed environment $customProperties is set to enable using the system proxy $customProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><Property xsi:type="StringProperty" Name="UseSystemProxyForHypervisorTrafficOnConnectors" Value="True" /></CustomProperties>' $awsEndPoint is set to the desired region for the connection $awsEndPoint = "https://ec2.us-east-1.amazonaws.com" $hypConnName is set to the connection name to use $hypConnName = "ctx-test" $apiKey is set to the AWS API Key ID or "role_based_auth" if the Cloud Connector instance has an appropriate role $apiKey = "role_based_auth" $secretKey is set to the AWS API Key Secret or "role_based_auth" if the Cloud Connector instance has an appropriate role $secretKey = "role_based_auth" $resourceLocation is set to the connector resource location name $resourceLocation = "ctx-test" #################################################################################### $secureSecretKey = ConvertTo-SecureString -String $secretKey -AsPlainText -Force $zoneUid = (Get-ConfigZone|Where-Object Name -EQ "$resourceLocation").Uid <!--NeedCopy-->Remarque :
Assurez-vous de remplacer les valeurs d’espace réservé dans les variables
$customProperties,$awsEndPoint,$hypConnName,$apiKey,$secretKeyet$resourceLocationpar les valeurs appropriées pour votre environnement. -
Créez la connexion d’hyperviseur.
$hypHc = New-Item -Path xdhyp:\Connections ` -Name $hypConnName ` -HypervisorAddress $awsEndPoint ` -UserName $apiKey ` -SecurePassword $secureSecretKey ` -ConnectionType $hypType ` -CustomProperties $customProperties ` -Persist ` -ZoneUid $zoneUid <!--NeedCopy--> -
Créez la connexion d’hyperviseur Broker.
$bhc = New-BrokerHypervisorConnection -HypHypervisorConnectionUid $hypHc.HypervisorConnectionUid <!--NeedCopy-->
Voir aussi Mettre à jour une connexion d’hôte existante avec proxy automatique
Provisionnement inter-comptes
Il existe des cas d’utilisation où les Cloud Connectors souhaitent être placés dans un compte AWS distinct (compte de services partagés ou compte de composants de site) avec des rôles IAM ayant un accès inter-comptes (rôle IAM inter-comptes) et des catalogues de machines provisionnés par MCS dans un compte AWS secondaire distinct (comptes de charges de travail), sans nécessiter de Cloud Connectors supplémentaires dans les comptes distincts. Pour prendre en charge de tels scénarios, cette fonctionnalité utilise le peering de VPC et l’accès inter-comptes à l’aide de rôles IAM pour rendre le provisionnement entre différents comptes AWS possible pour les entreprises gérant plusieurs comptes AWS.
Avec le peering de VPC, vous pouvez faire en sorte que votre Cloud Connector et les machines virtuelles provisionnées dans différentes régions ou comptes puissent communiquer entre eux.
Avec l’accès inter-comptes à l’aide de rôles IAM, vous permettez au compte principal (compte Cloud Connector) d’assumer un rôle IAM pour accéder aux ressources AWS du compte secondaire (machines virtuelles du catalogue de machines).
Pour permettre au Cloud Connector d’accéder aux ressources du compte secondaire, créez une connexion d’hôte après avoir assumé le rôle IAM du compte secondaire.
Prérequis
Configurez les éléments suivants avant de créer une connexion d’hôte pour le provisionnement inter-comptes :
- Configurez le peering VPC et les groupes de sécurité dans les deux régions ou comptes. Consultez Configurer le peering VPC.
- Déléguez l’accès inter-comptes à l’aide de rôles IAM. Consultez Déléguer l’accès inter-comptes à l’aide de rôles IAM.
Configurer le peering VPC
Supposons que le VPC A se trouve dans le compte principal (Compte A) et qu’il contient les Cloud Connectors et Active Directory. Le VPC B se trouve dans le compte secondaire (Compte B) où vous souhaitez provisionner les machines virtuelles.
Pour configurer une connexion de peering VPC entre le Compte A et le Compte B, procédez comme suit :
-
Créez une connexion de peering VPC. Consultez :
- Accédez à votre VPC A et à la table de routage associée au sous-réseau public.
- Cliquez sur Modifier les routes > Ajouter une route. Ajoutez le bloc CIDR du VPC B dans la colonne Destination et le peering VPC que vous avez créé dans la colonne Cible.
- Répétez les étapes 2 et 3, mais avec les sous-réseaux privés pour le VPC A et le VPC B (ajoutez le bloc CIDR du VPC A). Consultez Mettre à jour vos tables de routage pour une connexion de peering VPC.
- Accédez au groupe de sécurité privé associé au VPC A.
- Sélectionnez Actions, puis Modifier les règles de trafic entrant.
-
Sélectionnez Ajouter une règle. Pour le type, sélectionnez Tout le trafic, puis dans la colonne Source, ajoutez :
- S’il s’agit d’une région différente, ajoutez le bloc CIDR du VPC B.
- S’il s’agit d’un compte différent mais de la même région, ajoutez l’ID de compte et l’ID de groupe de sécurité privé du VPC B séparés par une barre oblique (Exemple : 123456789012/sg-1a2b3c4d)
- Répétez les étapes 5 à 7, mais avec le groupe de sécurité privé pour le VPC B (mais ajoutez le bloc CIDR du VPC A ou l’ID de compte du VPC A et l’ID de groupe de sécurité privé de la même région, mais d’un compte différent). Consultez Mettre à jour vos groupes de sécurité pour référencer les groupes de sécurité homologues.
Remarque :
Il n’y a pas de frais pour créer une connexion de peering VPC. Cependant, bien que le peering VPC au sein d’une zone de disponibilité soit gratuit, des frais s’appliquent lorsque le transfert de données via une connexion de peering VPC a lieu entre plusieurs zones de disponibilité et régions. Consultez Tarification d’une connexion de peering VPC.
Déléguer l’accès inter-comptes à l’aide de rôles IAM
Après avoir configuré le peering VPC entre les comptes, vous déléguez l’accès inter-comptes à l’aide de rôles IAM.
Avec l’accès inter-comptes à l’aide de rôles IAM, vous autorisez le compte principal (compte Cloud Connector) à assumer un rôle IAM pour accéder aux ressources AWS dans le compte secondaire (machines virtuelles du catalogue de machines).
Pour accéder aux ressources inter-comptes, procédez comme suit :
Rappel :
Supposons que le VPC A se trouve dans le compte principal (Compte A) et qu’il contient le Cloud Connector et Active Directory. Le VPC B se trouve dans le compte secondaire (Compte B) où vous souhaitez provisionner les machines virtuelles.
- Configurez le peering VPC entre les comptes en suivant les étapes mentionnées précédemment.
- Créez un rôle et une politique IAM dans le Compte B avec des autorisations IAM Citrix minimales. Consultez Tutoriel IAM : Déléguer l’accès entre les comptes AWS à l’aide de rôles IAM. Supposons que l’ARN de ce rôle soit “arn:aws:iam::5678:role/citrix-role”.
- Ajoutez la politique d’approbation au rôle “arn:aws:iam::5678:role/citrix-role” afin qu’il puisse être accédé par le rôle du Compte A “arn:aws:iam::1234:role/primary-account-citrix-role” conformément à Accès aux ressources inter-comptes dans IAM.
- Créez le rôle et la politique IAM dans le Compte A avec le nom mentionné précédemment “primary-account-citrix role”, qui peut assumer le rôle IAM et transmettre le rôle IAM du Compte B (arn:aws:iam::5678:role/citrix-role).
- Attribuez le rôle “arn:aws:iam::1234:role/primary-account-citrix-role” à tous les Cloud Connectors du Compte A.
Les Cloud Connectors peuvent désormais assumer le rôle du Compte B (“arn:aws:iam::5678:role/citrix-role”).
Créer une connexion d’hôte pour le provisionnement inter-comptes
Créez une connexion d’hôte dans le compte secondaire (Compte B) où vous souhaitez provisionner les machines virtuelles. Cela permet aux Cloud Connectors du Compte A d’accéder aux ressources du Compte B après avoir assumé le rôle du Compte B.
Utilisez les commandes PowerShell pour créer la connexion d’hôte et ajouter les deux propriétés personnalisées suivantes :
-
CrossAccountRoleArn: Si vous ne fournissez pas la propriétéCrossAccountRoleArn, la connexion d’hôte normale est créée. Dans ce cas,MaximumAssumeRoleDurationInSecondsest ignoré même s’il est fourni. -
MaximumAssumeRoleDurationInSeconds:DurationInSecondsdoit être compris entre 900 et 3600 secondes. La valeur par défaut est 900 secondes. Si vous fournissez une valeur supérieure à 3600,DurationInSecondsest défini sur 3600.
Exemple :
$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 "AWS" -HypervisorAddress "https://ec2.$($cloudRegion).amazonaws.com" -Persist -Scope @() -UserName $apiKey -SecurePassword $secureKey -ZoneUid $zoneUid -CustomProperties $customProperties
New-BrokerHypervisorConnection -HypHypervisorConnectionUid $connection.HypervisorConnectionUid
<!--NeedCopy-->
Une fois la connexion d’hôte créée, créez des unités d’hébergement à l’aide de Studio ou de PowerShell. Cependant, sélectionnez VPC et Réseaux.
Modifier une connexion
Vous pouvez modifier une connexion d’hôte existante pour :
- Modifier l’option permettant de fournir des autorisations IAM à Citrix pour gérer les ressources
- Modifier le nombre maximal d’actions simultanées (ou de machines concurrentes) par connexion d’hébergement
- Modifier l’étendue.
- Configurer le nombre maximal de groupes de sécurité autorisés par interface réseau élastique (ENI) à l’aide de la commande PowerShell
- Mettre à jour une connexion d’hôte existante avec un proxy automatique
Modifier les options pour fournir des autorisations IAM
- Cliquez avec le bouton droit sur une connexion Amazon EC2 existante.
- Sur la page Propriétés de la connexion, cliquez sur Modifier les paramètres.
- Sélectionnez l’une des options permettant de fournir des autorisations IAM à Citrix pour gérer les ressources. Saisissez les détails requis et cliquez sur Enregistrer.
Modifier le nombre maximal d’actions simultanées
Lorsque vous créez des connexions d’hôte dans Studio pour Amazon EC2, les valeurs par défaut suivantes s’affichent :
| Option | Absolu | Pourcentage |
|---|---|---|
| Actions simultanées (tous types) | 125 | 100 |
| Nombre maximal de nouvelles actions par minute | 150 | n/a |
| Nombre maximal d’opérations de provisioning simultanées | 100 | n/a |
MCS prend en charge 100 opérations de provisioning simultanées au maximum par défaut.
Configurez ces valeurs en accédant à la section Avancé de Citrix Studio sur l’écran Modifier la connexion.

Vous pouvez également utiliser le SDK PowerShell distant pour définir le nombre maximal d’opérations simultanées afin d’obtenir des paramètres optimaux pour votre environnement.
Utilisez la propriété personnalisée PowerShell, MaximumConcurrentProvisioningOperations, pour spécifier le nombre maximal d’opérations de provisioning AWS simultanées.
Avant la configuration :
- Assurez-vous d’avoir installé le SDK PowerShell pour le cloud.
- Comprenez que la valeur par défaut de
MaximumConcurrentProvisioningOperationsest 100.
Effectuez les étapes suivantes pour personnaliser la valeur de MaximumConcurrentProvisioningOperations :
- Ouvrez une fenêtre PowerShell.
- Exécutez
asnp citrix*pour charger les modules PowerShell spécifiques à Citrix. - Saisissez
cd xdhyp:\Connections\. - Saisissez
dirpour lister les connexions. -
Modifiez ou initialisez la chaîne des propriétés personnalisées :
-
Si la chaîne des propriétés personnalisées a une valeur, copiez les propriétés personnalisées dans le Bloc-notes. Ensuite, modifiez la propriété
MaximumConcurrentProvisioningOperationsà la valeur de votre choix. Vous pouvez saisir une valeur comprise entre 1 et 1000. Par exemple,<Property xsi:type="IntProperty" Name="MaximumConcurrentProvisioningOperations" Value="xyz"/>. -
Si la chaîne des propriétés personnalisées est vide ou nulle, vous devez initialiser la chaîne en saisissant la syntaxe appropriée pour le schéma et la propriété
MaximumConcurrentProvisioningOperations.
-
-
Dans la fenêtre PowerShell, collez les propriétés personnalisées modifiées du Bloc-notes et attribuez une variable aux propriétés personnalisées modifiées. Si vous avez initialisé les propriétés personnalisées, ajoutez les lignes suivantes après la syntaxe :
$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>'.Cette chaîne définit la propriété
MaximumConcurrentProvisioningOperationssur 100. Dans la chaîne des propriétés personnalisées, vous devez définir la propriétéMaximumConcurrentProvisioningOperationssur une valeur qui correspond à vos besoins. - Saisissez
Get-XDAuthentication, qui vous invite à entrer vos informations d’identification. - Exécutez
$cred = Get-Credential, ce qui peut vous inviter à entrer uniquement un mot de passe (ou un nom d’utilisateur et un mot de passe). Vous pouvez également être invité à entrer l’ID de l’application et le secret associé. Pour les connexions utilisant l’authentification basée sur les rôles, role_based_auth est à la fois le nom d’utilisateur et le mot de passe. Sinon, entrez l’ID et le secret de l’API AWS. - Exécutez
set-item -PSPath 'XDHyp:\Connections<connection-name>' -CustomProperties $customProperties -username $cred.username -Securepassword $cred.password. Vous devez définir le <nom-de-la-connexion> sur le nom de la connexion. - Saisissez
dirpour vérifier la chaîne CustomProperties mise à jour.
Configurer les groupes de sécurité par interface réseau
Lors de la modification d’une connexion d’hôte, vous pouvez désormais configurer le nombre maximal de groupes de sécurité autorisés par interface réseau élastique (ENI) à l’aide d’une commande PowerShell. Pour plus d’informations sur les valeurs de quota des groupes de sécurité AWS, consultez Groupes de sécurité.
Pour configurer les groupes de sécurité par interface réseau :
- Ouvrez une fenêtre PowerShell.
- Exécutez
asnp citrix*pour charger les modules PowerShell spécifiques à Citrix. - Exécutez
cd xdhyp:\Connections\. - Exécutez
dirpour lister les connexions. -
Exécutez la commande PowerShell suivante pour configurer les groupes de sécurité par interface réseau :
Set-HypHypervisorConnectionMetadata -HypervisorConnectionName aws -Name "Citrix_MachineManagement_Options" -Value " AwsMaxENISecurityGroupLimit=<number>" <!--NeedCopy-->Remarque :
Si vous ne définissez pas de valeur pour
AwsMaxENISecurityGroupLimit, la valeur par défaut de 5 est utilisée.
Mettre à jour une connexion d’hôte existante avec un proxy automatique
- Ouvrez une fenêtre PowerShell.
- Exécutez
asnp citrix*pour charger les modules PowerShell spécifiques à Citrix. - Saisissez
cd xdhyp:\Connections\. - Saisissez
dirpour lister les connexions. - Copiez les propriétés personnalisées dans un bloc-notes et ajoutez le paramètre de propriété
<Property xsi:type="StringProperty" Name="UseSystemProxyForHypervisorTrafficOnConnectors" Value="True". - Dans la fenêtre PowerShell, collez les propriétés personnalisées modifiées du Bloc-notes et attribuez une variable aux propriétés personnalisées modifiées.
- Saisissez
Get-XDAuthentication, qui vous invite à entrer vos informations d’identification. - Exécutez
$cred = Get-Credential, ce qui peut vous inviter à entrer uniquement un mot de passe (ou un nom d’utilisateur et un mot de passe). Vous pouvez également être invité à entrer l’ID de l’application et le secret associé. Pour les connexions utilisant l’authentification basée sur les rôles, role_based_auth est à la fois le nom d’utilisateur et le mot de passe. Sinon, entrez l’ID et le secret de l’API AWS. - Exécutez
set-item -PSPath 'XDHyp:\Connections<connection-name>' -CustomProperties $customProperties -username $cred.username -Securepassword $cred.password. Vous devez définir le <nom-de-la-connexion> sur le nom de la connexion. - Saisissez
dirpour vérifier la chaîne CustomProperties mise à jour.
URL du point de terminaison de service
URL du point de terminaison de service de zone standard
Lorsque vous utilisez MCS, une nouvelle connexion AWS est ajoutée avec une clé API et un secret API. Avec ces informations, ainsi que le compte authentifié, MCS interroge AWS pour les zones prises en charge à l’aide de l’appel d’API AWS DescribeRegions EC2. La requête est effectuée à l’aide d’une URL générique de point de terminaison de service EC2 https://ec2.amazonaws.com/. Utilisez MCS pour sélectionner la zone de la connexion dans la liste des zones prises en charge. L’URL de point de terminaison de service AWS préférée est automatiquement sélectionnée pour la zone. Cependant, après avoir créé l’URL du point de terminaison de service, vous ne pouvez plus la définir ou la modifier.
URL du point de terminaison de service non standard
Il peut y avoir des situations où vous n’avez pas besoin de l’URL de point de terminaison de service AWS choisie automatiquement pour la connexion. Dans de tels cas, vous pouvez utiliser le SDK Citrix Cloud et PowerShell pour créer une connexion avec une URL de point de terminaison de service non standard. Par exemple, pour créer une connexion à l’aide de l’URL de point de terminaison de service https://ec2.cn-north-1.amazonaws.com.cn :
- Configurez le Cloud Connector hébergé par AWS et assurez-vous qu’il dispose d’une connectivité.
-
Exécutez les commandes PowerShell suivantes pour afficher la liste des Cloud Connectors.
PS C:\> asnp citrix.* PS C:\> Get-XDAuthentication PS C:\> Get-ConfigEdgeServer <!--NeedCopy--> -
Trouvez le
ZoneUiddu Cloud Connector nouvellement créé et saisissez-le dans les commandes PowerShell suivantes. Remplacez les éléments en italique par les valeurs respectives.PS C:\> $hyp= New-Item -Path xdhyp:\Connections -ZoneUid`*ZoneUid*`-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 <!--NeedCopy--> - Actualisez l’onglet Hébergement pour vérifier que la connexion EC2 a été créée.
- Ajoutez un emplacement de ressources à l’aide de la nouvelle connexion.
Autorisations AWS requises
Cette section contient la liste complète des autorisations AWS. Utilisez l’ensemble complet des autorisations tel qu’indiqué dans la section pour que la fonctionnalité fonctionne correctement.
Remarque :
L’autorisation
iam:PassRolen’est nécessaire que pourrole_based_auth.
Création d’une connexion d’hôte
Une nouvelle connexion d’hôte est ajoutée à l’aide des informations obtenues d’AWS.
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:DescribeAvailabilityZones",
"ec2:DescribeSubnets",
"ec2:DescribeVpcs",
"ec2:DescribeRegions"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
<!--NeedCopy-->
Gestion de l’alimentation des machines virtuelles
Les machines virtuelles sont mises sous tension ou hors tension.
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:DescribeInstances",
"ec2:StartInstances",
"ec2:StopInstances",
"ec2:RebootInstances"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
<!--NeedCopy-->
Création, mise à jour ou suppression de machines virtuelles
Un catalogue de machines est créé, mis à jour ou supprimé avec des machines virtuelles provisionnées en tant qu’instances AWS.
{
"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: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": "*"
}
]
}
<!--NeedCopy-->
Remarque :
- La section EC2 relative aux
SecurityGroupsn’est nécessaire que si un groupe de sécurité d’isolation doit être créé pour la machine virtuelle de préparation lors de la création du catalogue. Une fois cette opération effectuée, ces autorisations ne sont plus requises.
Importation de machines virtuelles
Un catalogue de machines est créé en important des machines virtuelles.
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:DescribeInstances",
"ec2:DescribeSecurityGroups",
"ec2:DescribeAvailabilityZones",
"ec2:DescribeSubnets",
"ec2:DescribeVolumes",
"ec2:DescribeSpotInstanceRequests"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
<!--NeedCopy-->
Remarque :
L’autorisation
ec2:DescribeSpotInstanceRequestsn’est nécessaire que s’il existe une instance Spot dans la région AWS à partir de laquelle les machines virtuelles doivent être importées.
Téléchargement et chargement direct de disques
Le téléchargement direct de disques élimine l’exigence de travailleur de volume pour le provisionnement de catalogues de machines et utilise plutôt les API publiques fournies par AWS. Cette fonctionnalité réduit le coût associé aux comptes de stockage supplémentaires et la complexité de la maintenance des opérations du travailleur de volume.
Remarque :
La prise en charge du travailleur de volume est supprimée. Les autorisations de téléchargement et de chargement direct de disques sont requises pour le provisionnement du catalogue de machines.
Les autorisations suivantes doivent être ajoutées à la stratégie :
ebs:StartSnapshotebs:GetSnapshotBlockebs:PutSnapshotBlockebs:CompleteSnapshotebs:ListSnapshotBlocksebs:ListChangedBlocksec2:CreateSnapshotec2:DeleteSnapshotec2:DescribeLaunchTemplates
Important :
- Vous pouvez ajouter une nouvelle machine virtuelle à des catalogues de machines existants sans aucune ressource de travailleur de volume, telle qu’une AMI de travailleur de volume et une machine virtuelle de travailleur de volume.
- Si vous supprimez un catalogue existant qui utilisait un travailleur de volume auparavant, tous les artefacts liés au travailleur de volume sont supprimés.
Chiffrement EBS des volumes créés
EBS peut chiffrer automatiquement les volumes nouvellement créés si l’AMI est chiffrée, ou si EBS est configuré pour chiffrer tous les nouveaux volumes. Cependant, pour implémenter cette fonctionnalité, les autorisations suivantes doivent être incluses dans la politique IAM.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"kms:CreateGrant",
"kms:Decrypt",
"kms:DescribeKey",
"kms:GenerateDataKeyWithoutPlainText",
"kms:GenerateDataKey",
"kms:ReEncryptTo",
"kms:ReEncryptFrom"
],
"Resource": "*"
}
]
}
<!--NeedCopy-->
Remarque :
Les autorisations peuvent être limitées à des clés spécifiques en incluant un bloc Ressource et Condition, à la discrétion de l’utilisateur. Par exemple, Autorisations KMS avec condition :
{
"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-->
L’instruction de politique de clé suivante est la politique de clé par défaut complète pour les clés KMS qui est requise pour permettre au compte d’utiliser les politiques IAM afin de déléguer l’autorisation pour toutes les actions (kms:*) sur la clé KMS.
{
"Sid": "Enable IAM policies",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::111122223333:root"
},
"Action": "kms:",
"Resource": ""
}
<!--NeedCopy-->
Pour plus d’informations, consultez la documentation officielle d’AWS Key Management Service.
Authentification basée sur les rôles IAM
Les autorisations suivantes sont ajoutées pour prendre en charge l’authentification basée sur les rôles.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::*:role/*"
}
]
}
<!--NeedCopy-->
Politique d’autorisations IAM minimale
Le JSON suivant peut être utilisé pour toutes les fonctionnalités actuellement prises en charge. Vous pouvez créer des connexions d’hôte, créer, mettre à jour ou supprimer des machines virtuelles, et effectuer la gestion de l’alimentation à l’aide de cette politique. La politique peut être appliquée aux utilisateurs comme expliqué dans les sections Définition des autorisations IAM ou vous pouvez également utiliser l’authentification basée sur les rôles à l’aide de la clé de sécurité et de la clé secrète role_based_auth.
Important :
Pour utiliser role_based_auth, configurez d’abord le rôle IAM souhaité sur l’instance EC2 du connecteur cloud lors de la configuration du connecteur cloud. À l’aide de Citrix Studio, ajoutez la connexion d’hébergement et fournissez le
role_based_authpour la clé d’authentification et le secret. Une connexion d’hébergement avec ces paramètres utilise alors l’authentification basée sur les rôles.
{
"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: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/*"
}
]
}
<!--NeedCopy-->
Remarque :
- La section EC2 relative aux SecurityGroups n’est nécessaire que si un groupe de sécurité d’isolation doit être créé pour la machine virtuelle de préparation lors de la création du catalogue. Une fois cela fait, ces autorisations ne sont plus requises.
- La section KMS n’est requise que lors de l’utilisation du chiffrement de volume EBS.
- La section d’autorisation
iam:PassRolen’est nécessaire que pour role_based_auth.- Des autorisations spécifiques au niveau des ressources peuvent être ajoutées au lieu d’un accès complet, en fonction de vos exigences et de votre environnement. Reportez-vous aux documents AWS Demystifying EC2 Resource-Level Permissions et Access management for AWS resources pour plus de détails.
- Utilisez les autorisations
ec2:CreateNetworkInterfaceetec2:DeleteNetworkInterfaceuniquement si vous utilisez la méthode du travailleur de volume.
Valider les autorisations sur la connexion d’hôte
Vous pouvez valider les autorisations sur une connexion d’hôte pour effectuer des tâches liées à la création et à la gestion de catalogues de machines MCS. Cette implémentation vous aide à identifier à l’avance les autorisations manquantes requises pour différents scénarios, tels que la création, la suppression et la mise à jour de machines virtuelles, la gestion de l’alimentation des machines virtuelles et le chiffrement EBS, afin d’éviter d’être bloqué à des moments critiques.
Vous pouvez valider les autorisations sur une connexion d’hôte à l’aide de la commande PowerShell Test-HypHypervisorConnection. Le résultat de la commande est capturé sous forme de liste où chaque élément de la liste est divisé en trois sections.
- Catégorie : L’action ou la tâche qu’un utilisateur peut effectuer pour créer et gérer un catalogue de machines MCS.
- Action corrective : L’étape qu’un administrateur doit effectuer pour résoudre un écart d’autorisations manquantes d’un utilisateur.
- Autorisation manquante : La liste des autorisations manquantes pour une catégorie.
Pour valider les autorisations, procédez comme suit :
- Créez une connexion d’hôte à AWS.
- Ouvrez une fenêtre PowerShell à partir de l’hôte Delivery Controller™.
- Exécutez
asnp citrix*pour charger les modules PowerShell spécifiques à Citrix. -
Exécutez la commande suivante pour vérifier si vous disposez des autorisations requises pour rechercher vos autorisations.
Test-HypHypervisorConnection -LiteralPath "XDHyp:\Connections\AWSCon" <!--NeedCopy--> -
Après avoir ajouté les autorisations manquantes requises pour rechercher vos autorisations, exécutez la commande suivante pour vérifier si vous disposez des autorisations dans les catégories suivantes :
- Créer, mettre à jour, supprimer
- Gestion de l’alimentation
- Chiffrement EBS
Test-HypHypervisorConnection -LiteralPath "XDHyp:\Connections\AWSCon" [-SecurePassword -Password] "password" -UserName "" -CustomProperties "" <!--NeedCopy-->
Pour plus d’informations sur l’ajout d’autorisations, consultez Ajouter des autorisations IAM.
Où aller ensuite
- Si vous êtes en phase de déploiement initial, consultez Créer des catalogues de machines.
- Pour des informations spécifiques à AWS, consultez Créer un catalogue AWS EC2.
Plus d’informations
Dans cet article
- Prérequis
- Définir les autorisations IAM
- Créer une connexion
- Configuration de proxy améliorée pour la connexion d’hôte AWS
- Provisionnement inter-comptes
- Modifier une connexion
- URL du point de terminaison de service
- Autorisations AWS requises
- Valider les autorisations sur la connexion d’hôte
- Où aller ensuite
- Plus d’informations