Citrix Virtual Apps and Desktops

Ambienti cloud AWS

Questo articolo Le illustra come configurare il Suo account AWS come posizione delle risorse che Lei può 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à, Lei potrà installare VDA, eseguire il provisioning di macchine, creare cataloghi di macchine e creare gruppi di consegna.

Quando Lei completerà le attività in questo articolo, la Sua posizione delle risorse includerà i seguenti componenti:

  • Un cloud privato virtuale (VPC) con subnet pubbliche e private all’interno di una singola zona di disponibilità.
  • Un’istanza che funge sia da controller di dominio Active Directory che da server DNS, situata nella subnet privata del VPC.
  • Un’istanza che funge da host bastion nella subnet pubblica del Suo VPC. Questa istanza viene utilizzata per avviare connessioni RDP alle istanze nella subnet privata a scopo amministrativo. Dopo aver completato la configurazione della Sua posizione delle risorse, Lei potrà arrestare questa istanza in modo che non sia più facilmente accessibile. Quando Lei dovrà gestire altre istanze nella subnet privata, come le istanze VDA, potrà riavviare l’istanza dell’host bastion.

Limitazione

A partire da Citrix Virtual Apps and Desktops 2203 LTSR e versioni successive, il plug-in MCS AWS effettua la chiamata API AWS DescribeInstanceTypes e, in caso di successo, MCS utilizza il nome dell’inventario creato dalla risposta API.

Pertanto, quando Lei esegue l’aggiornamento da CVAD 1912 a 2203 o versioni successive, disabiliti l’autorizzazione DefineInstanceType su AWS, quindi aggiorni il catalogo esistente utilizzando il comando Set-ProvScheme per corrispondere allo schema di denominazione AWS. Successivamente, aggiunga 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 subnet pubbliche e private. Al completamento di questa attività, AWS distribuisce un gateway NAT con un indirizzo IP elastico nella subnet pubblica. Questa azione consente alle istanze nella subnet privata di accedere a Internet. Le istanze nella subnet pubblica sono accessibili al traffico pubblico in entrata, mentre le istanze nella subnet privata non lo sono.

Configurare i gruppi di sicurezza. I gruppi di sicurezza agiscono come firewall virtuali che controllano il traffico per le istanze nel Suo VPC. Lei aggiunge regole ai Suoi gruppi di sicurezza che consentono alle istanze nella Sua subnet pubblica di comunicare con le istanze nella Sua subnet privata. Lei associa inoltre questi gruppi di sicurezza a ogni istanza nel Suo VPC.

Creare un set di opzioni DHCP. Con un Amazon VPC, i servizi DHCP e DNS sono forniti per impostazione predefinita, il che influisce sulla configurazione del DNS sul Suo controller di dominio 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 Active Directory e specifica il server DNS per tutte le istanze nel Suo VPC. Per garantire che i record Host (A) e Reverse Lookup (PTR) vengano registrati automaticamente quando le istanze si uniscono al dominio, Lei configura le proprietà della scheda di rete per ogni istanza che aggiunge alla subnet privata.

Aggiungere un host bastion e un controller di dominio al VPC. Tramite l’host bastion, Lei può accedere alle istanze nella subnet 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 gateway NAT ($), 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 Suo VPC:

  • Un gruppo di sicurezza pubblico da associare alle istanze nella Sua subnet pubblica.
  • Un gruppo di sicurezza privato da associare alle istanze nella Sua 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 Regole in entrata e selezionare 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 Regole in uscita e selezionare 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 Lei non ha configurato il traffico dal gruppo di sicurezza pubblico, deve impostare le porte TCP; selezionare la scheda Regole in entrata e selezionare 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 Regole in uscita e selezionare 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 passaggi seguenti per creare due istanze EC2 e decrittografare la password predefinita dell’amministratore generata da Amazon:

  1. Dalla console di gestione AWS, selezionare EC2.
  2. Dalla Dashboard EC2, selezionare Avvia istanza.
  3. Selezionare un’immagine di macchina Windows Server e un tipo di istanza.
  4. Nella pagina Configura dettagli istanza, immettere un nome per l’istanza e selezionare il VPC configurato in precedenza.
  5. In Subnet, effettuare le seguenti selezioni per ogni istanza:

    • Host bastion: selezionare la subnet pubblica
    • Controller di dominio: selezionare la subnet 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 Sua subnet privata per il controller di dominio.
  8. Se necessario, nella pagina Aggiungi archiviazione, modificare la dimensione 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 Sue selezioni e quindi selezionare Avvia.
  12. Creare una nuova coppia di chiavi o selezionarne una esistente. Se Lei crea una nuova coppia di chiavi, scarichi il file della Sua chiave privata (.pem) e lo conservi in un luogo sicuro. Lei deve fornire la Sua chiave privata quando acquisisce la password predefinita dell’amministratore per l’istanza.
  13. Selezionare Avvia istanze. Selezionare Visualizza istanze per visualizzare un elenco delle Sue istanze. Attendere che l’istanza appena avviata abbia superato tutti i controlli di stato prima di accedervi.
  14. Acquisire la password predefinita dell’amministratore 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 Sua chiave privata (.pem) quando richiesto.
    3. Selezionare Decrittografa password per ottenere la password leggibile. AWS visualizza la password predefinita.
  15. Ripetere i passaggi dal passaggio 2 fino a quando non si sono create due istanze:

    • Un’istanza host bastion nella Sua subnet pubblica
    • Un’istanza nella Sua 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 Lei utilizza quando configura l’istanza del controller di dominio.
    • Server dei nomi di dominio: immettere l’indirizzo IP privato assegnato all’istanza del controller di dominio 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 controller di dominio.
    • Tipo di nodo NetBIOS: immettere 2.
  3. Selezionare Sì, crea.

  4. Associare il nuovo set al Suo VPC:

    1. Dalla Dashboard VPC, selezionare I Suoi VPC e quindi selezionare il VPC configurato in precedenza.
    2. Selezionare Azioni > Modifica set di opzioni DHCP.
    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 dell’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 dell’amministratore per l’istanza.

  3. Per tutte le istanze nella subnet privata, configurare le impostazioni DNS:

    1. Selezionare Start > Pannello di controllo > Rete e Internet > Centro connessioni di rete e condivisione > Modifica impostazioni scheda. Fare doppio clic sulla connessione di rete visualizzata.
    2. Selezionare Proprietà > Protocollo Internet versione 4 (TCP/IPv4) > Proprietà.
    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 durante la creazione del set di opzioni DHCP. Riavviare l’istanza quando richiesto.

Creare una connessione

Quando Lei crea una connessione da Studio:

  • Lei deve fornire i valori della chiave API e della chiave segreta. Lei può esportare il file della chiave contenente tali valori da AWS e quindi importarli. Lei deve inoltre fornire la regione, la zona di disponibilità, il nome del VPC, gli indirizzi delle subnet, 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. Si assicuri di utilizzare i file delle credenziali di AWS Identity Access Management (IAM).

Nota:

Dopo aver creato una connessione, i tentativi di aggiornare la chiave API e la chiave segreta potrebbero fallire. Per risolvere il problema, controlli le restrizioni del Suo server proxy o firewall e si assicuri che il seguente indirizzo sia raggiungibile: https://*.amazonaws.com.

Valori predefiniti della connessione host

Quando Lei crea 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  

MCS supporta 100 operazioni di provisioning simultanee massime per impostazione predefinita.

URL dell’endpoint del servizio

URL dell’endpoint del servizio della zona standard

Quando Lei 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 effettuata utilizzando un URL generico dell’endpoint del servizio EC2 https://ec2.amazonaws.com/. Utilizzi MCS per selezionare la zona per la connessione dall’elenco delle zone supportate. L’URL dell’endpoint del servizio AWS preferito viene selezionato automaticamente per la zona. Tuttavia, dopo aver creato l’URL dell’endpoint del servizio, Lei non può più 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 potrebbero risiedere sullo stesso hardware fisico. La tenancy dedicata significa che le Sue istanze EC2 vengono eseguite solo su hardware con altre istanze che Lei ha distribuito. Altri clienti non utilizzano lo stesso hardware.

Lei può utilizzare MCS per eseguire il provisioning di host dedicati AWS utilizzando PowerShell.

Configurare la tenancy dell’host dedicato AWS utilizzando PowerShell

Lei può creare un catalogo di macchine con tenancy host definita tramite PowerShell.

Un host dedicato Amazon [EC2] è un server fisico con capacità di istanza [EC2] completamente dedicata, che Le consente di utilizzare licenze software esistenti per socket o per VM.

Gli host dedicati hanno un’utilizzazione preimpostata basata sul tipo di istanza. Ad esempio, un singolo host dedicato allocato di tipo di istanza C4 Large è limitato all’esecuzione di 16 istanze. Vedere il sito AWS per maggiori informazioni.

I requisiti per il provisioning su host AWS includono:

  • Un’immagine BYOL (bring your own license) importata (AMI). Con gli host dedicati, utilizzi e gestisca le Sue licenze esistenti.
  • Un’allocazione di host dedicati con un’utilizzazione sufficiente a soddisfare le richieste di provisioning.
  • Abilitare l’auto-posizionamento.

Per eseguire il provisioning su un host dedicato in AWS utilizzando PowerShell, utilizzi il cmdlet New-ProvScheme con il parametro TenancyType impostato su Host.

Fare riferimento alla documentazione per sviluppatori Citrix per maggiori informazioni.

Acquisizione delle proprietà dell’istanza AWS

Quando Lei crea un catalogo per il provisioning di macchine utilizzando Machine Creation Services (MCS) in AWS, 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 Lei desiderava ruoli o tag sulle Sue macchine, utilizzava la console AWS per impostarli individualmente. Questa funzionalità è abilitata per impostazione predefinita.

Suggerimento:

Per utilizzare l’acquisizione delle proprietà dell’istanza AWS, Lei deve 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 Identity Access Management (IAM) e i tag della macchina alle macchine di cui è stato eseguito il provisioning per un dato catalogo. Quando si utilizza questa funzionalità opzionale, il processo di creazione del catalogo trova l’istanza di origine AMI selezionata, leggendo un set limitato di proprietà. Queste proprietà vengono quindi archiviate in un modello di avvio AWS, 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, ai loro dischi e alle NIC. Questi tag vengono applicati alle risorse Citrix® transitorie, inclusi: 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 ed è configurabile utilizzando la proprietà personalizzata AwsOperationalResourcesTagging.

Acquisizione della proprietà dell’istanza AWS

Lei può 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 documentazione per sviluppatori Citrix per maggiori informazioni.

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

Quando Lei crea un catalogo per il provisioning di macchine in AWS utilizzando MCS, può controllare se applicare il ruolo IAM e le proprietà dei tag a tali macchine. Lei può anche 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. Lei utilizza un’AMI per distribuire servizi che utilizzano l’ambiente EC2. Quando Lei crea un catalogo per il provisioning di macchine utilizzando MCS per AWS, seleziona l’AMI che fungerà da immagine golden per quel catalogo.

Importante:

La creazione di cataloghi acquisendo una proprietà dell’istanza e un modello di avvio è necessaria per utilizzare l’assegnazione di tag alle risorse operative.

Per creare un catalogo AWS, Lei deve prima creare un’AMI per l’istanza che desidera sia l’immagine golden. MCS legge i tag da quell’istanza e li incorpora nel modello di avvio. I tag del modello di avvio vengono quindi applicati a tutte le risorse Citrix create nel Suo ambiente AWS, inclusi:

  • Macchine virtuali
  • Dischi VM
  • Interfacce di rete VM
  • Bucket S3
  • Oggetti S3
  • Modelli di avvio
  • AMI

Assegnazione di tag a una risorsa operativa

Per utilizzare PowerShell per assegnare tag alle 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 di cui è stato eseguito il provisioning, utilizzi la nuova proprietà personalizzata AwsOperationalResourcesTagging. La sintassi per questa proprietà è:

New-ProvScheme -CustomProperties “AwsCaptureInstanceProperties,true; AwsOperationalResourcesTagging,true” …<standard provscheme parameters>

Definizione delle autorizzazioni IAM

Utilizzi 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 maggiori informazioni sulle autorizzazioni IAM, consultare IAM JSON policy reference.

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 Policy personalizzata. Selezionare Seleziona.
  5. Digitare un nome per la Policy delle autorizzazioni.
  6. Nella sezione Documento della policy, immettere le autorizzazioni pertinenti.

Dopo aver immesso le informazioni sulla policy, 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:

Utilizzi il testo della policy 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 Le consiglia di utilizzare l’esempio a scopo di test. Per gli ambienti di produzione, Lei 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 Riepilogo, selezionare la scheda Autorizzazioni.
  2. Selezionare Aggiungi autorizzazioni.

Identity and Access Management (IAM)

Nella schermata Aggiungi autorizzazioni a, concedere le autorizzazioni:

Grant permissions for IAM policies

Utilizzi quanto segue come esempio nella scheda JSON:

JSON example

Suggerimento:

L’esempio JSON indicato potrebbe non includere tutte le autorizzazioni per il Suo ambiente. Vedere How to Define Identity Access Management Permissions Running Citrix Virtual Apps and Desktops on AWS per maggiori informazioni.

Informazioni 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": "*"
        }
    ]
}
<!--NeedCopy-->

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": "*"
        }
    ]
}
<!--NeedCopy-->

Creazione, aggiornamento o eliminazione di VM

Un catalogo di macchine viene creato, aggiornato o eliminato con VM di cui è stato eseguito il provisioning 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": "*"
        }
    ]
}
<!--NeedCopy-->

Nota:

La sezione EC2 relativa ai SecurityGroups è necessaria solo se deve essere creato 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 di 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:

  • Lei può aggiungere una nuova VM a cataloghi di macchine esistenti senza alcuna operazione di volume worker come AMI del volume worker e VM del volume worker.
  • Se Lei elimina un catalogo esistente che utilizzava un volume worker in precedenza, 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, oppure 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": "*"
        }
    ]
}
<!--NeedCopy-->

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
                }
            }
        }
    ]
}
<!--NeedCopy-->

La seguente dichiarazione di policy della chiave è l’intera policy della chiave predefinita per le chiavi KMS che è richiesta 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": ""
}
<!--NeedCopy-->

Per maggiori informazioni, consultare la documentazione ufficiale di AWS Key Management Service.

Autenticazione basata su ruoli IAM

Le seguenti autorizzazioni vengono aggiunte per supportare l’autenticazione basata su ruoli.

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

Policy di autorizzazioni IAM minime

Il seguente JSON può essere utilizzato per tutte le funzionalità attualmente supportate. Lei può 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 Lei può utilizzare l’autenticazione basata su ruoli utilizzando la chiave di sicurezza e la chiave segreta role_based_auth.

Importante:

Per utilizzare role_based_auth, Lei deve prima configurare il ruolo IAM desiderato sull’istanza EC2 del connettore cloud durante la configurazione del connettore cloud. Utilizzando Citrix Studio, aggiunga la connessione di hosting e fornisca role_based_auth per la chiave di autenticazione e il segreto. Una connessione di hosting con queste impostazioni utilizzerà quindi l’autenticazione basata su ruoli.

{
    "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/*"
        }
    ]
}
<!--NeedCopy-->

Nota:

  • La sezione EC2 relativa ai SecurityGroups è necessaria solo se deve essere creato 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 invece dell’accesso completo in base ai Suoi requisiti e all’ambiente. Fare riferimento ai documenti AWS Demystifying EC2 Resource-Level Permissions e Access management for AWS resources per maggiori dettagli.

Maggiori informazioni