Ambienti cloud AWS

Last published : Nov 13, 2026
Questo articolo illustra come configurare l'account AWS come posizione delle risorse da utilizzare con Citrix Virtual Apps and Desktops. La posizione delle risorse include un set di componenti di base, ideale per una prova di concetto o per altre distribuzioni che non richiedono risorse distribuite su più zone di disponibilità. Dopo aver completato queste attività, è possibile installare i VDA, eseguire il provisioning delle macchine, creare cataloghi di macchine e creare gruppi di consegna.
Quando si completano le attività descritte in questo articolo, la posizione delle risorse include i seguenti componenti:
  • Un cloud privato virtuale (VPC) con sottoreti pubbliche e private all'interno di una singola zona di disponibilità.
  • Un'istanza che funziona sia come controller di dominio di Active Directory che come server DNS, situata nella sottorete privata del VPC.
  • Un'istanza che funge da bastion host nella sottorete pubblica del VPC. Questa istanza viene utilizzata per avviare connessioni RDP alle istanze nella sottorete privata a scopo amministrativo. Dopo aver completato la configurazione della posizione delle risorse, è possibile arrestare questa istanza in modo che non sia più facilmente accessibile. Quando è necessario gestire altre istanze nella sottorete privata, come le istanze VDA, è possibile riavviare l'istanza del bastion host.

Limitazione

Da Citrix Virtual Apps and Desktops 2203 LTSR e versioni successive, il plug-in MCS AWS effettua una DescribeInstanceTypes chiamata API AWS e, se questa ha esito positivo, MCS utilizza il nome dell'inventario creato dalla risposta API.
Pertanto, quando si esegue l'aggiornamento da CVAD 1912 a 2203 o versioni successive, disabilitare l'autorizzazione DefineInstanceType su AWS, quindi aggiornare il catalogo esistente utilizzando il comando Set-ProvScheme per corrispondere allo schema di denominazione AWS. Quindi, aggiungere nuovamente le autorizzazioni DescribeInstanceType dopo che l'aggiornamento del catalogo è completo e l'offerta di servizi corrisponde allo schema di denominazione AWS.

Panoramica delle attività

Configurare un cloud privato virtuale (VPC) con sottoreti pubbliche e private. Al completamento di questa attività, AWS distribuisce un gateway NAT con un indirizzo IP elastico nella sottorete pubblica. Questa azione consente alle istanze nella sottorete privata di accedere a Internet. Le istanze nella sottorete pubblica sono accessibili al traffico pubblico in entrata, mentre le istanze nella sottorete privata non lo sono.
Configurare i gruppi di sicurezza. I gruppi di sicurezza fungono da firewall virtuali che controllano il traffico per le istanze nel VPC. Si aggiungono regole ai gruppi di sicurezza che consentono alle istanze nella sottorete pubblica di comunicare con le istanze nella sottorete privata. Si associano inoltre questi gruppi di sicurezza a ogni istanza nel VPC.
Creare un set di opzioni DHCP. Con un Amazon VPC, i servizi DHCP e DNS sono forniti per impostazione predefinita, il che influisce sul modo in cui si configura il DNS sul controller di dominio di Active Directory. Il DHCP di Amazon non può essere disabilitato e il DNS di Amazon può essere utilizzato solo per la risoluzione DNS pubblica, non per la risoluzione dei nomi di Active Directory. Per specificare il dominio e i server dei nomi forniti alle istanze tramite DHCP, creare un set di opzioni DHCP. Il set assegna il suffisso del dominio di Active Directory e specifica il server DNS per tutte le istanze nel VPC. Per garantire che i record Host (A) e Reverse Lookup (PTR) vengano registrati automaticamente quando le istanze si uniscono al dominio, è necessario configurare le proprietà della scheda di rete per ogni istanza aggiunta alla sottorete privata.
Aggiungere un bastion host e un controller di dominio al VPC. Tramite il bastion host, è possibile accedere alle istanze nella sottorete privata per configurare il dominio e unire le istanze al dominio.

Attività 1: Configurare il VPC

  1. Dalla console di gestione AWS, selezionare VPC.
  2. Dalla dashboard VPC, selezionare Crea VPC.
  3. Selezionare VPC e altro.
  4. Sotto NAT gateways ($), selezionare In 1 AZ o 1 per AZ.
  5. Sotto Opzioni DNS, lasciare selezionato Abilita nomi host DNS.
  6. Selezionare Crea VPC. AWS crea le subnet pubbliche e private, il gateway Internet, le tabelle di routing e il gruppo di sicurezza predefinito.

Attività 2: Configurare i gruppi di sicurezza

Questa attività crea e configura i seguenti gruppi di sicurezza per il VPC:
  • Un gruppo di sicurezza pubblico da associare alle istanze nella subnet pubblica.
  • Un gruppo di sicurezza privato da associare alle istanze nella subnet privata.
Per creare i gruppi di sicurezza:
  1. Nella Dashboard VPC, selezionare Gruppi di sicurezza.
  2. Creare un gruppo di sicurezza per il gruppo di sicurezza pubblico. Selezionare Crea gruppo di sicurezza e immettere un tag nome e una descrizione per il gruppo. In VPC, selezionare il VPC creato in precedenza. Selezionare Sì, crea.

Configurare il gruppo di sicurezza pubblico

  1. Dall'elenco dei gruppi di sicurezza, selezionare il gruppo di sicurezza pubblico.
  2. Selezionare la scheda Inbound Rules (Regole in entrata) e selezionare Edit (Modifica) per creare le seguenti regole:
    Tipo Origine
    Tutto il traffico Selezionare il gruppo di sicurezza privato.
    Tutto il traffico Selezionare il gruppo di sicurezza pubblico.
    ICMP 0.0.0.0/0
    22 (SSH) 0.0.0.0/0
    80 (HTTP) 0.0.0.0/0
    443 (HTTPS) 0.0.0.0/0
    1494 (ICA/HDX) 0.0.0.0/0
    2598 (Affidabilità sessione) 0.0.0.0/0
    3389 (RDP) 0.0.0.0/0
  3. Al termine, selezionare Salva.
  4. Selezionare la scheda Outbound Rules (Regole in uscita) e selezionare Edit (Modifica) per creare le seguenti regole:
    Tipo Destinazione
    Tutto il traffico Selezionare il gruppo di sicurezza privato.
    Tutto il traffico 0.0.0.0/0
    ICMP 0.0.0.0/0
  5. Al termine, selezionare Salva.

Configurare il gruppo di sicurezza privato

  1. Dall'elenco dei gruppi di sicurezza, selezionare il gruppo di sicurezza privato.
  2. Se non è stato configurato il traffico dal gruppo di sicurezza pubblico, è necessario impostare le porte TCP; selezionare la scheda Inbound Rules (Regole in entrata) e selezionare Edit (Modifica) per creare le seguenti regole:
    Tipo Origine
    Tutto il traffico Selezionare il gruppo di sicurezza privato.
    Tutto il traffico Selezionare il gruppo di sicurezza pubblico.
    ICMP Selezionare il gruppo di sicurezza pubblico.
    TCP 53 (DNS) Selezionare il gruppo di sicurezza pubblico.
    UDP 53 (DNS) Selezionare il gruppo di sicurezza pubblico.
    80 (HTTP) Selezionare il gruppo di sicurezza pubblico.
    TCP 135 Selezionare il gruppo di sicurezza pubblico.
    TCP 389 Selezionare il gruppo di sicurezza pubblico.
    UDP 389 Selezionare il gruppo di sicurezza pubblico.
    443 (HTTPS) Selezionare il gruppo di sicurezza pubblico.
    TCP 1494 (ICA/HDX) Selezionare il gruppo di sicurezza pubblico.
    TCP 2598 (Affidabilità sessione) Selezionare il gruppo di sicurezza pubblico.
    3389 (RDP) Selezionare il gruppo di sicurezza pubblico.
    TCP 49152–65535 Selezionare il gruppo di sicurezza pubblico.
  3. Al termine, selezionare Salva.
  4. Selezionare la scheda Outbound Rules (Regole in uscita) e selezionare Edit (Modifica) per creare le seguenti regole:
    Tipo Destinazione
    Tutto il traffico Selezionare il gruppo di sicurezza privato.
    Tutto il traffico 0.0.0.0/0
    ICMP 0.0.0.0/0
    UDP 53 (DNS) 0.0.0.0/0
  5. Al termine, selezionare Salva.

Attività 3: Avviare le istanze

Eseguire i seguenti passaggi per creare due istanze EC2 e decrittografare la password di amministratore predefinita generata da Amazon:
  1. Dalla console di gestione AWS, selezionare EC2.
  2. Dalla Dashboard EC2, selezionare Avvia istanza.
  3. Selezionare un'immagine della macchina Windows Server e un tipo di istanza.
  4. Nella pagina Configure Instance Details (Configura dettagli istanza), immettere un nome per l'istanza e selezionare il VPC configurato in precedenza.
  5. In Sottorete, effettuare le seguenti selezioni per ogni istanza:
    • Host bastion: Selezionare la sottorete pubblica
    • Controller di dominio: selezionare la sottorete privata
  6. In Assegna automaticamente indirizzo IP pubblico, effettuare le seguenti selezioni per ogni istanza:
    • Host bastion: Selezionare Abilita.
    • Controller di dominio: Selezionare Usa impostazione predefinita o Disabilita.
  7. In Interfacce di rete, immettere un indirizzo IP primario all'interno dell'intervallo IP della subnet privata per il Controller di dominio.
  8. Se necessario, nella pagina Aggiungi archiviazione, modificare le dimensioni del disco.
  9. Nella pagina Tagga istanza, immettere un nome descrittivo per ogni istanza.
  10. Nella pagina Configura gruppi di sicurezza, selezionare Seleziona un gruppo di sicurezza esistente e quindi effettuare le seguenti selezioni per ogni istanza:
    • Host bastion: Selezionare il gruppo di sicurezza pubblico.
    • Controller di dominio: Selezionare il gruppo di sicurezza privato.
  11. Rivedere le selezioni e quindi selezionare Avvia.
  12. Creare una nuova coppia di chiavi o selezionarne una esistente. Se si crea una nuova coppia di chiavi, scaricare il file della chiave privata (.pem) e conservarlo in un luogo sicuro. È necessario fornire la chiave privata quando si acquisisce la password di amministratore predefinita per l'istanza.
  13. Selezionare Avvia istanze. Selezionare Visualizza istanze per visualizzare un elenco delle istanze. Attendere che l'istanza appena avviata abbia superato tutti i controlli di stato prima di accedervi.
  14. Acquisire la password di amministratore predefinita per ogni istanza:
    1. Dall'elenco delle istanze, selezionare l'istanza e quindi selezionare Connetti.
    2. Andare alla scheda Client RDP, selezionare Ottieni password e caricare il file della chiave privata (.pem) quando richiesto.
    3. Selezionare Decifra password per ottenere la password leggibile. AWS visualizza la password predefinita.
  15. Ripetere i passaggi dal passaggio 2 fino a quando non sono state create due istanze:
    • Un'istanza host bastion nella subnet pubblica
    • Un'istanza nella subnet privata da utilizzare come Controller di dominio.

Attività 4: Creare un set di opzioni DHCP

  1. Dalla Dashboard VPC, selezionare Set di opzioni DHCP.
  2. Immettere le seguenti informazioni:
    • Tag nome: Immettere un nome descrittivo per il set.
    • Nome di dominio: Immettere il nome di dominio completo che si utilizza quando si configura l'istanza del Domain Controller.
    • Server dei nomi di dominio: Immettere l'indirizzo IP privato assegnato all'istanza del Domain Controller e la stringa AmazonProvidedDNS, separati da virgole.
    • Server NTP: Lasciare vuoto questo campo.
    • Server dei nomi NetBIOS: Immettere l'indirizzo IP privato dell'istanza del Domain Controller.
    • Tipo di nodo NetBIOS: Immettere 2.
  3. Selezionare Sì, crea.
  4. Associare il nuovo set al VPC:
    1. Dalla dashboard del VPC, selezionare Your VPCs e quindi selezionare il VPC configurato in precedenza.
    2. Selezionare Actions > Edit DHCP Options Set.
    3. Quando richiesto, selezionare il nuovo set creato e quindi selezionare Salva.

Attività 5: Configurare le istanze

  1. Utilizzando un client RDP, connettersi all'indirizzo IP pubblico dell'istanza host bastion. Quando richiesto, immettere le credenziali per l'account Amministratore.
  2. Dall'istanza dell'host bastion, avviare Connessione Desktop remoto e connettersi all'indirizzo IP privato dell'istanza che si desidera configurare. Quando richiesto, immettere le credenziali di amministratore per l'istanza.
  3. Per tutte le istanze nella subnet privata, configurare le impostazioni DNS:
    1. Selezionare Start > Control Panel > Network and Internet > Network and Sharing Center > Change adapter settings. Fare doppio clic sulla connessione di rete visualizzata.
    2. Selezionare Properties > Internet Protocol Version 4 (TCP/IPv4) > Properties.
    3. Selezionare Avanzate > DNS. Assicurarsi che le seguenti impostazioni siano abilitate e selezionare OK:
      • Registra gli indirizzi di questa connessione in DNS
      • Usa il suffisso DNS di questa connessione nella registrazione DNS
  4. Per configurare il Controller di dominio:
    1. Utilizzando Server Manager, aggiungere il ruolo Servizi di dominio Active Directory con tutte le funzionalità predefinite.
    2. Promuovere l'istanza a controller di dominio. Durante la promozione, abilitare il DNS e utilizzare il nome di dominio specificato al momento della creazione del set di opzioni DHCP. Riavviare l'istanza quando richiesto.

Creare una connessione

Quando si crea una connessione da Studio:
  • È necessario fornire i valori della chiave API e della chiave segreta. È possibile esportare il file di chiavi contenente tali valori da AWS e quindi importarli. È inoltre necessario fornire la regione, la zona di disponibilità, il nome VPC, gli indirizzi di sottorete, il nome di dominio, i nomi dei gruppi di sicurezza e le credenziali.
  • Il file delle credenziali per l'account AWS root (recuperato dalla console AWS) non è formattato allo stesso modo dei file delle credenziali scaricati per gli utenti AWS standard. Pertanto, la gestione di Citrix Virtual Apps and Desktops non può utilizzare il file per popolare i campi della chiave API e della chiave segreta. Assicurarsi di utilizzare i file delle credenziali AWS Identity Access Management (IAM).
Nota:
Dopo aver creato una connessione, i tentativi di aggiornare la chiave API e la chiave segreta potrebbero non riuscire. Per risolvere il problema, controllare le restrizioni del server proxy o del firewall e assicurarsi che il seguente indirizzo sia contattabile: https://*.amazonaws.com.

Valori predefiniti della connessione host

Quando si creano connessioni host negli ambienti cloud AWS, vengono visualizzati i seguenti valori predefiniti:
Opzione Assoluto Percentuale
Azioni simultanee (tutti i tipi) 125 100
Numero massimo di nuove azioni al minuto 125
Per impostazione predefinita, MCS supporta 100 operazioni di provisioning simultanee massime.

URL dell'endpoint del servizio

URL dell'endpoint del servizio della zona standard

Quando si utilizza MCS, viene aggiunta una nuova connessione AWS con una chiave API e un segreto API. Con queste informazioni, insieme all'account autenticato, MCS interroga AWS per le zone supportate utilizzando la chiamata API AWS DescribeRegions EC2. La query viene eseguita utilizzando un URL generico dell'endpoint del servizio EC2 https://ec2.amazonaws.com/. Utilizzare MCS per selezionare la zona per la connessione dall'elenco delle zone supportate. L'URL preferito dell'endpoint del servizio AWS viene selezionato automaticamente per la zona. Tuttavia, dopo aver creato l'URL dell'endpoint del servizio, non è più possibile impostare o modificare l'URL.

Tenancy AWS

AWS offre le seguenti opzioni di tenancy: tenancy condivisa (il tipo predefinito) e tenancy dedicata. La tenancy condivisa significa che più istanze Amazon EC2 di clienti diversi possono risiedere sullo stesso hardware fisico. La tenancy dedicata significa che le istanze EC2 vengono eseguite solo su hardware con altre istanze distribuite dall'utente. Altri clienti non utilizzano lo stesso hardware.
È possibile utilizzare MCS per il provisioning di host dedicati AWS tramite PowerShell.

Configurare la tenancy dell'host dedicato AWS tramite PowerShell

È possibile creare un catalogo di macchine con tenancy host definita tramite PowerShell.
Un host dedicato Amazon è un server fisico con capacità di istanza completamente dedicata, che consente di utilizzare licenze software esistenti per socket o per VM.
Gli host dedicati hanno un utilizzo preimpostato basato sul tipo di istanza. Ad esempio, un singolo host dedicato allocato di tipo di istanza C4 Large è limitato all'esecuzione di 16 istanze. Per ulteriori informazioni, consultare il sito AWS.
I requisiti per il provisioning su host AWS includono:
  • Un'immagine BYOL (bring your own license) importata (AMI). Con gli host dedicati, utilizzare e gestire le licenze esistenti.
  • Un'allocazione di host dedicati con un'utilizzazione sufficiente a soddisfare le richieste di provisioning.
  • abilitare auto-placement.
Per eseguire il provisioning su un host dedicato in AWS utilizzando PowerShell, utilizzare il cmdlet New-ProvScheme con il parametro TenancyType impostato su Host.
Fare riferimento alla Citrix Developer Documentation per maggiori informazioni.

Acquisizione delle proprietà dell'istanza AWS

Quando si crea un catalogo per il provisioning di macchine utilizzando Machine Creation Services (MCS) in AWS, si seleziona un'AMI per rappresentare l'immagine master/golden di quel catalogo. Da quell'AMI, MCS utilizza uno snapshot del disco. Nelle versioni precedenti, se si desideravano ruoli o tag sulle macchine, si utilizzava la console AWS per impostarli individualmente. Questa funzionalità è abilitata per impostazione predefinita.
Suggerimento:
Per utilizzare l'acquisizione delle proprietà dell'istanza AWS, è necessario disporre di una VM associata all'AMI.
Per migliorare questo processo, MCS legge le proprietà dall'istanza da cui è stata acquisita l'AMI e applica il ruolo e i tag di Identity Access Management (IAM) della macchina alle macchine di cui è stato eseguito il provisioning per un determinato catalogo. Quando si utilizza questa funzionalità opzionale, il processo di creazione del catalogo individua l'istanza di origine AMI selezionata, leggendo un set limitato di proprietà. Queste proprietà vengono quindi archiviate in un modello di avvio AWS (AWS Launch Template), che viene utilizzato per il provisioning delle macchine per quel catalogo. Qualsiasi macchina nel catalogo eredita le proprietà dell'istanza acquisite.
Le proprietà acquisite includono:
  • Ruoli IAM – applicati alle istanze di cui è stato eseguito il provisioning.
  • Tag - applicati alle istanze di cui è stato eseguito il provisioning, al loro disco e alle NIC. Questi tag vengono applicati alle risorse Citrix® transitorie, tra cui: bucket e oggetti S3, risorse di volume e worker, e AMI, snapshot e modelli di avvio.
Suggerimento:
L'assegnazione di tag alle risorse Citrix transitorie è facoltativa e configurabile utilizzando la proprietà personalizzata AwsOperationalResourcesTagging.

Acquisizione della proprietà dell'istanza AWS

È possibile utilizzare questa funzionalità specificando una proprietà personalizzata, AwsCaptureInstanceProperties, durante la creazione di uno schema di provisioning per una connessione di hosting AWS:
New-ProvScheme -CustomProperties “AwsCaptureInstanceProperties,true” …<standard provscheme parameters
Fare riferimento alla Citrix Developer Documentation per maggiori informazioni.

Applicazione delle proprietà dell'istanza AWS e assegnazione di tag alle risorse operative

Quando si crea un catalogo per il provisioning di macchine in AWS utilizzando MCS, è possibile controllare se applicare il ruolo IAM e le proprietà dei tag a tali macchine. È inoltre possibile controllare se applicare i tag delle macchine alle risorse operative.

Assegnazione di tag alle risorse operative AWS

Un'Amazon Machine Image (AMI) rappresenta un tipo di appliance virtuale utilizzata per creare una macchina virtuale all'interno dell'ambiente Amazon Cloud, comunemente denominato EC2. Si utilizza un'AMI per distribuire servizi che utilizzano l'ambiente EC2. Quando si crea un catalogo per il provisioning di macchine utilizzando MCS per AWS, si seleziona l'AMI che fungerà da immagine d'oro per tale catalogo.
Importante:
La creazione di cataloghi acquisendo una proprietà dell'istanza e un modello di avvio è necessaria per utilizzare il tagging delle risorse operative.
Per creare un catalogo AWS, è necessario prima creare un'AMI per l'istanza che si desidera sia l'immagine d'oro. MCS legge i tag da tale istanza e li incorpora nel modello di avvio. I tag del modello di avvio vengono quindi applicati a tutte le risorse Citrix create nell'ambiente AWS, inclusi:
  • Macchine virtuali
  • Dischi VM
  • Interfacce di rete VM
  • Bucket S3
  • Oggetti S3
  • Modelli di avvio
  • AMI

Applicazione di tag a una risorsa operativa

Per usare PowerShell per contrassegnare le risorse:
  1. Aprire una finestra PowerShell dall'host DDC.
  2. Eseguire il comando asnp citrix per caricare i moduli PowerShell specifici di Citrix.
Per assegnare un tag a una risorsa per una VM con provisioning, utilizzare la nuova proprietà personalizzata AwsOperationalResourcesTagging. La sintassi per questa proprietà è:
New-ProvScheme -CustomProperties “AwsCaptureInstanceProperties,true; AwsOperationalResourcesTagging,true” …<standard provscheme parameters>

Definizione delle autorizzazioni IAM

Utilizzare le informazioni in questa sezione per definire le autorizzazioni IAM per Citrix DaaS su AWS. Il servizio IAM di Amazon consente account con più utenti, che possono essere ulteriormente organizzati in gruppi. Questi utenti possono possedere diverse autorizzazioni per controllare la loro capacità di eseguire operazioni associate all'account. Per ulteriori informazioni sulle autorizzazioni IAM, vedere Riferimento alla policy JSON IAM.
Per applicare la policy delle autorizzazioni IAM a un nuovo gruppo di utenti:
  1. Accedere alla console di gestione AWS e selezionare il servizio IAM dall'elenco a discesa.
  2. Selezionare Crea un nuovo gruppo di utenti.
  3. Digitare un nome per il nuovo gruppo di utenti e selezionare Continua.
  4. Nella pagina Autorizzazioni, scegliere Criterio personalizzato. Selezionare Seleziona.
  5. Digitare un nome per la policy delle autorizzazioni.
  6. Nella sezione Documento del criterio, immettere le autorizzazioni pertinenti.
Dopo aver inserito le informazioni sul criterio, selezionare Continua per completare il gruppo di utenti. Agli utenti del gruppo vengono concesse le autorizzazioni per eseguire solo le azioni richieste per Citrix DaaS.
Importante:
Utilizzare il testo del criterio fornito nell'esempio precedente per elencare le azioni che un Citrix DaaS utilizza per eseguire azioni all'interno di un account AWS senza limitare tali azioni a risorse specifiche. Citrix consiglia di utilizzare l'esempio a scopo di test. Per gli ambienti di produzione, si potrebbe scegliere di aggiungere ulteriori restrizioni sulle risorse.

Aggiunta di autorizzazioni IAM

Impostare le autorizzazioni nella sezione IAM della Console di gestione AWS:
  1. Nel pannello Summary, selezionare la scheda Permissions.
  2. Selezionare Add permissions.
Gestione delle identità e degli accessi (IAM)
Nella schermata Add Permissions to, concedere le autorizzazioni:
Concedi autorizzazioni per i criteri IAM
Utilizzare quanto segue come esempio nella scheda JSON:
Esempio JSON
Suggerimento:
L'esempio JSON indicato potrebbe non includere tutte le autorizzazioni per il proprio ambiente. Per ulteriori informazioni, vedere Come definire le autorizzazioni di gestione dell'accesso all'identità per l'esecuzione di Citrix Virtual Apps and Desktops su AWS.

Sulle autorizzazioni AWS

Questa sezione contiene l'elenco completo delle autorizzazioni AWS.
Nota:
L'autorizzazione iam:PassRole è necessaria solo per role_based_auth.

Creazione di una connessione host

Viene aggiunta una nuova connessione host utilizzando le informazioni ottenute da AWS.
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "ec2:DescribeAvailabilityZones",
                "ec2:DescribeImages",
                "ec2:DescribeInstances",
                "ec2:DescribeInstanceTypes",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeSubnets",
                "ec2:DescribeVpcs",
                "ec2:DescribeRegions",
                "ec2:DescribeSnapshots",
                "ec2:DescribeLaunchTemplates"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ]
}

Gestione dell'alimentazione delle VM

Le istanze delle macchine vengono accese o spente.
{
    "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": "*"
        }
    ]
}

Creazione, aggiornamento o eliminazione di VM

Un catalogo di macchine viene creato, aggiornato o eliminato con VM fornite come istanze AWS.
{
    "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: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": "*"
        }
    ]
}
Nota:
La sezione EC2 relativa ai SecurityGroups è necessaria solo se è necessario creare un gruppo di sicurezza di isolamento per la VM di preparazione durante la creazione del catalogo. Una volta fatto ciò, queste autorizzazioni non sono più richieste.

Caricamento e download diretto del disco

Il caricamento diretto del disco elimina il requisito del volume worker per il provisioning del catalogo macchine e utilizza invece le API pubbliche fornite da AWS. Questa funzionalità riduce i costi associati agli account di archiviazione aggiuntivi e la complessità per il mantenimento delle operazioni del volume worker.
Le seguenti autorizzazioni devono essere aggiunte alla policy:
  • ebs:StartSnapshot
  • ebs:GetSnapshotBlock
  • ebs:PutSnapshotBlock
  • ebs:CompleteSnapshot
  • ebs:ListSnapshotBlocks
  • ebs:ListChangedBlocks
  • ec2:CreateSnapshot
  • ec2:DeleteSnapshot
  • ec2:DescribeLaunchTemplates
Importante:
  • È possibile aggiungere una nuova VM a cataloghi di macchine esistenti senza alcuna operazione del volume worker, come AMI del volume worker e VM del volume worker.
  • Se si elimina un catalogo esistente che in precedenza utilizzava il volume worker, tutti gli artefatti, inclusi quelli relativi al volume worker, vengono eliminati.

Crittografia EBS dei volumi creati

EBS può crittografare automaticamente i volumi appena creati se l'AMI è crittografata o se EBS è configurato per crittografare tutti i nuovi volumi. Tuttavia, per implementare la funzionalità, le seguenti autorizzazioni devono essere incluse nella policy IAM.
{
     "Version": "2012-10-17",
     "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                 "kms:CreateGrant",
                 "kms:Decrypt",
                 "kms:DescribeKey",
                 "kms:GenerateDataKeyWithoutPlainText",
                 "kms:ReEncryptTo",
                 "kms:ReEncryptFrom"
            ],
            "Resource": "*"
        }
    ]
}
Nota:
Le autorizzazioni possono essere limitate a chiavi specifiche includendo un blocco Resource e Condition a discrezione dell'utente. Ad esempio, Autorizzazioni KMS con condizione:
{
     "Version": "2012-10-17",
     "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                 "kms:CreateGrant",
                 "kms:Decrypt",
                 "kms:DescribeKey",
                 "kms:GenerateDataKeyWithoutPlainText",
                 "kms:ReEncryptTo",
                 "kms:ReEncryptFrom"
            ],
            "Resource": [
                "arn:aws:kms:us-east-2:123456789012:key/abcd1234-a123-456d-a12b-a123b4cd56ef"
            ],
            "Condition": {
                "Bool": {
                    "kms:GrantIsForAWSResource": true
                }
            }
        }
    ]
}
La seguente istruzione di policy chiave è l'intera policy chiave predefinita per le chiavi KMS necessaria per consentire all'account di utilizzare le policy IAM per delegare l'autorizzazione per tutte le azioni (kms:*) sulla chiave KMS.
{
"Sid": "Enable IAM policies",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::111122223333:root"
},
"Action": "kms:",
"Resource": ""
}
Per maggiori informazioni, consultare documentazione ufficiale di AWS Key Management Service.

Autenticazione basata su ruolo IAM

Le seguenti autorizzazioni vengono aggiunte per supportare l'autenticazione basata su ruolo.
{
     "Version": "2012-10-17",
     "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::*:role/*"
        }
    ]
}

Policy di autorizzazioni IAM minime

Il seguente JSON può essere utilizzato per tutte le funzionalità attualmente supportate. È possibile creare connessioni host, creare, aggiornare o eliminare VM ed eseguire la gestione dell'alimentazione utilizzando questa policy. La policy può essere applicata agli utenti come spiegato nelle sezioni Definizione delle autorizzazioni IAM oppure è possibile utilizzare l'autenticazione basata su ruolo utilizzando la chiave di sicurezza role_based_auth e la chiave segreta.
Importante:
Per utilizzare role_based_auth, configurare prima il ruolo IAM desiderato sull'istanza EC2 del connettore cloud durante la configurazione del connettore cloud. Utilizzando Citrix Studio, aggiungere la connessione di hosting e fornire role_based_auth per la chiave di autenticazione e il segreto. Una connessione di hosting con queste impostazioni utilizzerà quindi l'autenticazione basata su ruolo.
{
    "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: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:ReEncryptTo",
                 "kms:ReEncryptFrom"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::*:role/*"
        }
    ]
}
Nota:
  • La sezione EC2 relativa ai SecurityGroups è necessaria solo se è necessario creare un gruppo di sicurezza di isolamento per la VM di preparazione durante la creazione del catalogo. Una volta fatto ciò, queste autorizzazioni non sono più richieste.
  • La sezione KMS è richiesta solo quando si utilizza la crittografia del volume EBS.
  • La sezione delle autorizzazioni iam:PassRole è necessaria solo per role_based_auth.
  • È possibile aggiungere autorizzazioni specifiche a livello di risorsa anziché l'accesso completo, in base ai requisiti e all'ambiente. Per maggiori dettagli, fare riferimento ai documenti AWS Demystifying EC2 Resource-Level Permissions e Access management for AWS resources.

Ulteriori informazioni