Citrix DaaS™

Connessione a Microsoft Azure

Creare e gestire connessioni e risorse descrive le procedure guidate per la creazione di una connessione. Le seguenti informazioni riguardano i dettagli specifici degli ambienti cloud di Azure Resource Manager.

Nota:

Prima di creare una connessione a Microsoft Azure, è necessario completare la configurazione dell’account Azure come posizione risorsa. Vedere Ambienti di virtualizzazione di Microsoft Azure Resource Manager.

  • Creare entità servizio e connessioni

  • Prima di creare le connessioni, è necessario configurare le entità servizio che le connessioni utilizzano per accedere alle risorse di Azure. È possibile creare una connessione in due modi:

  • Creare un’entità servizio e una connessione insieme utilizzando Studio
  • Creare una connessione utilizzando un’entità servizio creata in precedenza

Questa sezione mostra come completare le seguenti attività: My content

Considerazioni

  • Prima di iniziare, tenere presente le seguenti considerazioni:

  • Citrix® consiglia di utilizzare le entità servizio con un ruolo Collaboratore. Tuttavia, consultare la sezione Autorizzazioni minime per ottenere l’elenco delle autorizzazioni minime.
  • Quando si crea la prima connessione, Azure richiede di concedere le autorizzazioni necessarie. Per le connessioni future sarà comunque necessario autenticarsi, ma Azure ricorderà il consenso precedente e non visualizzerà nuovamente la richiesta.
  • Dopo la prima autenticazione con Azure, un’applicazione multi-tenant di proprietà di Citrix (ID: 08b70dc3-76c5-4611-ba7d-3312ba36cb2b) viene invitata al Microsoft Entra ID per conto dell’account autenticato.
  • Gli account utilizzati per l’autenticazione devono disporre delle autorizzazioni per assegnare ruoli nella sottoscrizione utilizzando Azure RBAC. Ad esempio, Proprietario, Amministratore del controllo degli accessi in base al ruolo o Amministratore dell’accesso utente della sottoscrizione.
  • L’account utilizzato per l’autenticazione deve essere un membro della directory della sottoscrizione. Esistono due tipi di account da considerare: “Lavoro o scuola” e “account Microsoft personale”. Vedere CTX219211 per i dettagli.
  • Sebbene sia possibile utilizzare un account Microsoft esistente aggiungendolo come membro della directory della sottoscrizione, possono verificarsi complicazioni se all’utente è stato precedentemente concesso l’accesso guest a una delle risorse della directory. In questo caso, potrebbero avere una voce segnaposto nella directory che non concede le autorizzazioni necessarie e viene restituito un errore.

  • Rimediare a questo rimuovendo le risorse dalla directory e aggiungendole nuovamente in modo esplicito. Tuttavia, esercitare questa opzione con cautela, poiché ha effetti indesiderati su altre risorse a cui questo account può accedere.
  • Esiste un problema noto per cui alcuni account vengono rilevati come guest della directory quando in realtà sono membri. Configurazioni come questa si verificano tipicamente con account di directory più vecchi e consolidati. Soluzione alternativa: aggiungere un account alla directory, che assume il valore di appartenenza corretto.
  • I gruppi di risorse sono semplicemente contenitori per le risorse e possono contenere risorse di regioni diverse dalla propria. Questo può potenzialmente creare confusione se ci si aspetta che le risorse visualizzate nella regione di un gruppo di risorse siano disponibili.
  • Assicurarsi che la rete e la subnet siano sufficientemente grandi da ospitare il numero di macchine richiesto. Ciò richiede una certa lungimiranza, ma Microsoft aiuta a specificare i valori corretti, con indicazioni sulla capacità dello spazio degli indirizzi.

Creare un’entità servizio e una connessione utilizzando Studio

Importante:

Questa funzionalità non è ancora disponibile per le sottoscrizioni di Azure Cina.

Con Studio, è possibile creare sia un’entità servizio che una connessione in un unico flusso di lavoro. Le entità servizio concedono alle connessioni l’accesso alle risorse di Azure. Quando ci si autentica in Azure per creare un’entità servizio, un’applicazione viene registrata in Azure. Viene creata una chiave segreta (chiamata segreto client o segreto applicazione) per l’applicazione registrata. L’applicazione registrata (una connessione in questo caso) utilizza il segreto client per autenticarsi in Microsoft Entra ID.

Prima di iniziare, assicurarsi di aver soddisfatto i seguenti prerequisiti:

  • Si dispone di un account utente nel tenant Microsoft Entra della sottoscrizione.
  • Gli account utilizzati per l’autenticazione devono disporre delle autorizzazioni per assegnare ruoli nella sottoscrizione utilizzando Azure RBAC. Ad esempio, Proprietario, Amministratore del controllo degli accessi in base al ruolo o Amministratore dell’accesso utente della sottoscrizione.
  • Si dispone delle autorizzazioni di amministratore globale, amministratore dell’applicazione o sviluppatore dell’applicazione per l’autenticazione. Le autorizzazioni possono essere revocate dopo aver creato una connessione host. Per ulteriori informazioni sui ruoli, vedere Ruoli predefiniti di Microsoft Entra.

Utilizzare la procedura guidata Aggiungi connessione e risorse per creare un’entità servizio e una connessione insieme:

  1. Nella pagina Connessione, selezionare Crea una nuova connessione, il tipo di connessione Microsoft Azure e l’ambiente Azure.

  2. Selezionare gli strumenti da utilizzare per creare le macchine virtuali e quindi selezionare Avanti.

  3. Nella pagina Dettagli connessione, selezionare la modalità di autenticazione Segreto client applicazione, quindi creare un’entità servizio e impostare il nome della connessione come segue:

    1. Immettere l’ID della sottoscrizione di Azure e un nome per la connessione. Dopo aver immesso l’ID della sottoscrizione, il pulsante Crea nuovo viene abilitato.

    Nota:

    Il nome della connessione può contenere da 1 a 64 caratteri e non può contenere solo spazi vuoti o i caratteri \/;:#.*?=<>|[]{}"'()'.

    1. Selezionare Crea nuovo e quindi immettere il nome utente e la password dell’account Microsoft Entra.
    2. Selezionare Accedi.
    3. Selezionare Accetta per concedere a Citrix DaaS™ le autorizzazioni elencate. Azure crea un’entità servizio che consente a Citrix DaaS di gestire le risorse di Azure per conto dell’utente specificato.
    • Nota:

      • Citrix DaaS richiede le seguenti autorizzazioni per creare una nuova entità servizio:

        • Accedi a Gestione servizi Azure come te

        • Leggi e scrivi applicazioni

        • Accedi e leggi il tuo profilo

        • Mantieni l’accesso ai dati a cui hai concesso l’accesso

    1. Dopo aver selezionato Accetta, si viene reindirizzati alla pagina Dettagli connessione.
  • Nota:

  • Dopo aver eseguito correttamente l’autenticazione in Azure, i pulsanti Crea nuovo e Usa esistente scompaiono. Il testo Connessione riuscita appare con un segno di spunta verde, indicando la connessione riuscita alla sottoscrizione di Azure.

    1. Per instradare le richieste API ad Azure tramite i Connettori Cloud Citrix™, selezionare la casella di controllo Instrada il traffico tramite i Connettori Cloud Citrix. Quando i Connettori Cloud non hanno accesso diretto a Internet, è possibile selezionare Usa il proxy configurato sui Connettori Cloud Citrix per garantire che la connettività di Azure funzioni correttamente tramite i Connettori Cloud Citrix.

      In alternativa, è possibile abilitare questa funzionalità utilizzando PowerShell. Per ulteriori informazioni, vedere Creare un ambiente sicuro per il traffico gestito da Azure.

      Nota:

      Questa opzione è disponibile solo quando sono presenti Connettori Cloud Citrix attivi nella distribuzione. Attualmente, questa funzionalità non è supportata per le Appliance Connector.

    2. Selezionare Avanti.

Nota: > > Non è possibile procedere alla pagina successiva finché non ci si autentica correttamente ad Azure e si acconsente a concedere le autorizzazioni richieste.

  1. Configurare le risorse per la connessione come segue:

    • Nella pagina Area geografica, selezionare un’area geografica.
    • Nella pagina Rete, eseguire le operazioni seguenti:
      • Digitare un nome risorsa di 1-64 caratteri per identificare la combinazione di area geografica e rete. Un nome risorsa non può contenere solo spazi vuoti o i caratteri \/;:#.*?=<>|[]{}"'()'.
      • Selezionare una coppia rete virtuale/gruppo di risorse. (Se si dispone di più reti virtuali con lo stesso nome, l’associazione del nome della rete al gruppo di risorse fornisce combinazioni uniche.) Se l’area geografica selezionata nella pagina precedente non dispone di reti virtuali, tornare a tale pagina e selezionare un’area geografica che disponga di reti virtuali.
  2. Nella pagina Riepilogo, visualizzare un riepilogo delle impostazioni e selezionare Fine per completare la configurazione.

Visualizzare l’ID applicazione

-  Dopo aver creato una connessione, è possibile visualizzare l'ID applicazione che la connessione utilizza per accedere alle risorse di Azure.

-  Nell'elenco **Connessione e risorse**, selezionare la connessione per visualizzare i dettagli. La scheda **Dettagli** mostra l'ID applicazione.

-  ![ID applicazione nella pagina Aggiungi connessione e risorse](/en-us/citrix-daas/media/application-id-console-new.png)

Creare un’entità servizio usando PowerShell

Per creare un’entità servizio usando PowerShell, connettersi alla sottoscrizione di Azure Resource Manager e usare i cmdlet di PowerShell forniti nelle sezioni seguenti.

Assicurarsi di avere questi elementi pronti:

-  **SubscriptionId:** `SubscriptionID` di Azure Resource Manager per la sottoscrizione in cui si desidera eseguire il provisioning dei VDA.
-  **ActiveDirectoryID**: ID tenant dell'applicazione registrata con Microsoft Entra ID.
-  **ApplicationName:** Nome dell'applicazione da creare in Microsoft Entra ID.

-  I passaggi dettagliati sono i seguenti:

-  1.  Connettersi alla sottoscrizione di Azure Resource Manager.

`Connect-AzAccount`

-  1.  Selezionare la sottoscrizione di Azure Resource Manager in cui si desidera creare l'entità servizio.

   -  `Get-AzSubscription -SubscriptionId $subscriptionId | Select-AzSubscription`

   -  1.  Creare l'applicazione nel tenant di AD.

`$AzureADApplication = New-AzADApplication -DisplayName $ApplicationName`

   -  1.  Creare un'entità servizio.

   -  `New-AzADServicePrincipal -ApplicationId $AzureADApplication.AppId`

   -  1.  Assegnare un ruolo all'entità servizio.

New-AzRoleAssignment -RoleDefinitionName Contributor -ServicePrincipalName $AzureADApplication.AppId -scope /subscriptions/$SubscriptionId Property - 1. Dalla finestra di output della console PowerShell, annotare l’ApplicationId. Questo ID viene fornito durante la creazione della connessione host.

    -  ### Ottenere il segreto dell'applicazione in Azure

Per creare una connessione usando un’entità servizio esistente, è necessario prima ottenere l’ID applicazione e il segreto dell’entità servizio nel portale di Azure.

-  I passaggi dettagliati sono i seguenti:

    -  1.  Ottenere l'**ID applicazione** da Studio o usando PowerShell.
    -  1.  Accedere al portale di Azure.
    1. In Azure, selezionare Microsoft Entra ID.
    1. Da Registrazioni app in Microsoft Entra ID, selezionare l’applicazione.
    1. Andare a Certificati e segreti.
  1. Fare clic su Segreti client.

Segreto dell'applicazione nel portale di Azure

Creare una connessione usando un’entità servizio esistente

Se si dispone già di un’entità servizio, è possibile usarla per creare una connessione usando Studio.

  • Assicurarsi di avere questi elementi pronti:

  • SubscriptionId
  • ActiveDirectoryID (ID tenant)
  • ID applicazione
  • Segreto dell’applicazione Per ulteriori informazioni, vedere Ottenere il segreto dell’applicazione.
  • Data di scadenza del segreto

I passaggi dettagliati sono i seguenti:

  • Nella procedura guidata Aggiungi connessione e risorse:
  1. Nella pagina Connessione, selezionare Crea una nuova connessione, il tipo di connessione Microsoft Azure e l’ambiente Azure.
    1. Selezionare gli strumenti da usare per creare le macchine virtuali e quindi selezionare Avanti.
  1. Nella pagina Dettagli connessione, selezionare la modalità di autenticazione Segreto client applicazione, quindi immettere l’ID sottoscrizione di Azure e un nome per la connessione.

    Nota:

    • Il nome della connessione può contenere da 1 a 64 caratteri e non può contenere solo spazi vuoti o i caratteri \/;:#.*?=<>|[]{}"'()'.

  2. Selezionare Usa esistente. Nella finestra Dettagli entità servizio esistente, immettere le seguenti impostazioni per l’entità servizio esistente. Dopo aver immesso i dettagli, il pulsante Salva viene abilitato. Selezionare Salva. Non è possibile proseguire oltre questa pagina finché non si forniscono dettagli validi.

    • ID sottoscrizione. Immettere l’ID sottoscrizione di Azure. Per ottenere l’ID sottoscrizione, accedere al portale di Azure e passare a Sottoscrizioni > Panoramica.
    • ID Active Directory (ID tenant). Immettere l’ID directory (tenant) dell’applicazione registrata con Microsoft Entra ID.
    • ID applicazione. Immettere l’ID applicazione (client) dell’applicazione registrata con Microsoft Entra ID.
    • Segreto dell’applicazione. Immettere una chiave segreta (segreto client). L’applicazione registrata usa la chiave per l’autenticazione a Microsoft Entra ID. Si consiglia di modificare regolarmente le chiavi per motivi di sicurezza. Assicurarsi di salvare la chiave perché non sarà possibile recuperarla in seguito.
    • Data di scadenza del segreto. Immettere la data dopo la quale il segreto dell’applicazione scade. Si riceverà un avviso nella console a partire da 14 giorni prima della scadenza della chiave segreta. Tuttavia, se la chiave segreta scade, si riceveranno errori.

      Nota:

      Per motivi di sicurezza, il periodo di scadenza non può superare i due anni a partire da ora.

    • URL di autenticazione. Questo campo viene popolato automaticamente e non è modificabile.
    • URL di gestione. Questo campo viene popolato automaticamente e non è modificabile.
    • Suffisso di archiviazione. Questo campo viene popolato automaticamente e non è modificabile.
    • Endpoint di archiviazione BLOB di Azure per caricare o scaricare dischi o snapshot. Questo campo viene popolato automaticamente e non è modificabile.
    • Servizio Key Vault. Questo campo viene popolato automaticamente e non è modificabile.
    • Suffisso del bus di servizio. Questo campo viene popolato automaticamente e non è modificabile.

      È richiesto l’accesso ai seguenti endpoint per la creazione di un catalogo MCS in Azure. L’accesso a questi endpoint ottimizza la connettività tra la rete e il portale di Azure e i suoi servizi.

      • URL di autenticazione: https://login.microsoftonline.com
      • URL di gestione: https://management.azure.com. Si tratta di un URL di richiesta per le API del provider di Azure Resource Manager. L’endpoint per la gestione dipende dall’ambiente. Ad esempio, per Azure Global è https://management.azure.com, e per Azure US Government è https://management.usgovcloudapi.net.
      • Suffisso di archiviazione: https://*.core.windows.net. Questo (*) è un carattere jolly per il suffisso di archiviazione. Ad esempio, https://demo.table.core.windows.net.
      • Endpoint di archiviazione BLOB di Azure per caricare o scaricare dischi o snapshot: https://*.storage.azure.net. Questo (*) è un carattere jolly per le operazioni di importazione ed esportazione di archiviazione BLOB. Ad esempio, https://md-impexp-xxxxx.z[00-50].blob.storage.azure.net.
      • Servizio Key Vault: https://*.vault.azure.net. Questo (*) è un carattere jolly per il nome del Key Vault. Ad esempio, https://<your-key-vault-name>.vault.azure.net.
      • Suffisso del bus di servizio: https://*.servicebus.windows.net. Questo (*) è un carattere jolly per gli spazi dei nomi creati nel cloud globale di Azure. Ad esempio, https://{serviceNamespace}.servicebus.windows.net/{path}.
  3. Dopo aver selezionato Salva, si viene reindirizzati alla pagina Dettagli connessione. Selezionare Avanti per procedere alla pagina successiva.

  4. Configurare le risorse per la connessione come segue:

    • Nella pagina Area geografica, selezionare un’area geografica.
    • Nella pagina Rete, eseguire le operazioni seguenti:
      • Digitare un nome di risorsa di 1-64 caratteri per identificare la combinazione di area geografica e rete. Un nome di risorsa non può contenere solo spazi vuoti o i caratteri \/;:#.*?=<>|[]{}"'()'.
  • Selezionare una coppia rete virtuale/gruppo di risorse. (Se si dispone di più reti virtuali con lo stesso nome, l’associazione del nome della rete al gruppo di risorse fornisce combinazioni univoche.) Se l’area geografica selezionata nella pagina precedente non dispone di reti virtuali, tornare a tale pagina e selezionare un’area geografica che disponga di reti virtuali.
  1. Nella pagina Riepilogo, visualizzare un riepilogo delle impostazioni e selezionare Fine per completare la configurazione.

Gestire le entità servizio e le connessioni

-  Questa sezione descrive come gestire le entità servizio e le connessioni:

-  [Configurare le impostazioni di limitazione di Azure](#configure-azure-throttling-settings)
    -  [Gestire l'entità servizio di una connessione di hosting esistente](#manage-service-principal-of-an-existing-hosting-connection)
    -  [Abilitare la condivisione di immagini in Azure](#enable-image-sharing-in-azure)
    -  [Aggiungere tenant condivisi a una connessione tramite Studio](#add-shared-tenants-to-a-connection-using-studio)
    -  [Implementare la condivisione di immagini tramite PowerShell](#implement-image-sharing-using-powershell)
    -  [Creare un ambiente sicuro per il traffico gestito da Azure](#create-a-secure-environment-for-azure-managed-traffic)
    -  [Gestire il segreto dell'applicazione e la data di scadenza del segreto](#manage-the-application-secret-and-secret-expiration-date)

Configurare le impostazioni di limitazione di Azure

Azure Resource Manager limita le richieste per sottoscrizioni e tenant, instradando il traffico in base a limiti definiti, adattati alle esigenze specifiche del provider. Per ulteriori informazioni, consultare Limitazione delle richieste di Resource Manager sul sito Microsoft. Esistono limiti per sottoscrizioni e tenant, dove la gestione di molte macchine può diventare problematica. Ad esempio, una sottoscrizione contenente molte macchine potrebbe riscontrare problemi di prestazioni relativi alle operazioni di alimentazione.

Suggerimento:

Per ulteriori informazioni, consultare Migliorare le prestazioni di Azure con Machine Creation Services.

Per contribuire a mitigare questi problemi, Citrix DaaS consente di rimuovere la limitazione interna di MCS per utilizzare una quota maggiore delle richieste disponibili da Azure.

Si consigliano le seguenti impostazioni ottimali per l’accensione o lo spegnimento di VM in sottoscrizioni di grandi dimensioni, ad esempio quelle contenenti 1.000 VM:

-  Operazioni simultanee assolute: 500
    -  Numero massimo di nuove operazioni al minuto: 2000
    -  Concorrenza massima delle operazioni: 500

    -  Utilizzare Studio per configurare le operazioni di Azure per una determinata connessione host:

    -  1.  Da Studio, selezionare **Hosting** nel riquadro sinistro.
    -  1.  Selezionare una connessione correlata ad Azure per modificarla.
  1. Nella procedura guidata Modifica connessione, selezionare Avanzate.
  2. Nella pagina Avanzate, utilizzare le opzioni di configurazione per specificare il numero di azioni simultanee e il numero massimo di nuove azioni al minuto, nonché eventuali opzioni di connessione aggiuntive.

Limitazione di Azure

MCS supporta 500 operazioni simultanee massime per impostazione predefinita. In alternativa, è possibile utilizzare l’SDK di PowerShell remoto per impostare il numero massimo di operazioni simultanee.

Utilizzare la proprietà PowerShell, MaximumConcurrentProvisioningOperations, per specificare il numero massimo di operazioni di provisioning di Azure simultanee. Quando si utilizza questa proprietà, considerare:

  • Il valore predefinito di MaximumConcurrentProvisioningOperations è 500.
  • Configurare il parametro MaximumConcurrentProvisioningOperations utilizzando il comando PowerShell Set-item.

Gestire l’entità servizio di una connessione di hosting esistente

Dopo aver creato una connessione di hosting utilizzando un’entità servizio, è possibile scegliere di modificare la connessione di hosting per avere:

  • Nuova entità servizio
    • Utilizzare un’altra entità servizio esistente
  1. Da Studio, selezionare Hosting dal riquadro sinistro.
  2. Selezionare la connessione e quindi selezionare Modifica connessione nella barra delle azioni.
  3. Selezionare Proprietà connessione dal riquadro sinistro.
  4. Nella pagina Proprietà connessione visualizzata, fare clic su Modifica impostazioni connessione. È ora possibile scegliere di creare una nuova entità servizio o di utilizzare un’altra entità servizio esistente.

Modifica impostazioni

    -  Fare clic su **Crea entità servizio** per creare una nuova entità servizio. Seguire le istruzioni per accedere al proprio account utente Microsoft Entra. Citrix utilizza l'ID applicazione multi-tenant `08b70dc3-76c5-4611-ba7d-3312ba36cb2b` per creare una nuova entità servizio per la connessione host esistente e concedere le autorizzazioni appropriate.
    -  Fare clic su **Usa esistente** per utilizzare un'altra entità servizio esistente per tale connessione di hosting.

Abilitare la condivisione di immagini in Azure

Quando si creano o si aggiornano cataloghi di macchine, è possibile selezionare immagini condivise da diversi tenant e sottoscrizioni di Azure (condivise tramite la Azure Compute Gallery). Per abilitare la condivisione di immagini all’interno o tra tenant, è necessario effettuare le impostazioni necessarie in Azure:

    -  [Condividere immagini all'interno di un tenant (tra sottoscrizioni)](#share-images-within-a-tenant-across-subscriptions)
    -  [Condividere immagini tra tenant](#share-images-across-tenants)

Condividere immagini all’interno di un tenant (tra sottoscrizioni)

Per selezionare un’immagine in Azure Compute Gallery che appartiene a una sottoscrizione diversa, l’immagine deve essere condivisa con l’entità servizio (SPN) di tale sottoscrizione.

Ad esempio, se esiste un’entità servizio (SPN 1), configurata in Studio come segue:

Entità servizio: SPN 1

Sottoscrizione: sottoscrizione 1

    -  Tenant: tenant 1

    -  L'immagine si trova in una sottoscrizione diversa, configurata in Studio come segue:

Sottoscrizione: sottoscrizione 2

Tenant: tenant 1

Se si desidera condividere l’immagine nella sottoscrizione 2 con la sottoscrizione 1 (SPN 1), accedere alla sottoscrizione 2 e condividere il gruppo di risorse con SPN1.

L’immagine deve essere condivisa con un altro SPN utilizzando il controllo degli accessi in base al ruolo (RBAC) di Azure. Azure RBAC è il sistema di autorizzazione utilizzato per gestire l’accesso alle risorse di Azure. Per ulteriori informazioni su Azure RBAC, consultare il documento Microsoft Che cos’è il controllo degli accessi in base al ruolo (Azure RBAC). Per concedere l’accesso, si assegnano ruoli alle entità servizio nell’ambito del gruppo di risorse con il ruolo Collaboratore. Per assegnare i ruoli di Azure, è necessario disporre dell’autorizzazione Microsoft.Authorization/roleAssignments/write, ad esempio Amministratore accesso utenti o Proprietario. Per ulteriori informazioni sulla condivisione di immagini con un altro SPN, consultare il documento Microsoft Assegnare ruoli di Azure usando il portale di Azure.

Condividere le immagini tra tenant

Per condividere le immagini tra tenant con Azure Compute Gallery, creare o aggiornare la registrazione dell’applicazione e utilizzare questa applicazione per creare la connessione di hosting.

Ad esempio, se ci sono due tenant (Tenant 1 e Tenant 2) e si desidera condividere la propria galleria di immagini con Tenant 1, procedere come segue:

  1. Creare una registrazione dell’applicazione per Tenant 1. Per ulteriori informazioni, vedere Creare la registrazione dell’app.

  2. Concedere a Tenant 2 l’accesso all’applicazione richiedendo un accesso tramite browser. Sostituire Tenant2 ID con l’ID tenant di Tenant 1. Sostituire Application (client) ID con l’ID applicazione della registrazione dell’applicazione creata. Una volta effettuate le sostituzioni, incollare l’URL in un browser e seguire le istruzioni di accesso per accedere a Tenant 2. Ad esempio:

    
    https://login.microsoftonline.com/<Tenant 2 ID>/oauth2/authorize?client_id=<Application (client) ID>&response_type=code&redirect_uri=https%3A%2F%2Fwww.microsoft.com%2F
    
    <!--NeedCopy-->
    

    Per ulteriori informazioni, vedere Concedere l’accesso a Tenant 2.

  3. Concedere all’applicazione l’accesso al gruppo di risorse di Tenant 2. Accedere come Tenant 2 e concedere alla registrazione dell’applicazione l’accesso al gruppo di risorse che contiene l’immagine della galleria. Per ulteriori informazioni, vedere Autenticare le richieste tra tenant.

Aggiungere tenant condivisi a una connessione tramite Studio

Quando si creano o si aggiornano cataloghi di macchine in Studio, è possibile selezionare immagini condivise da diversi tenant e sottoscrizioni di Azure (condivise tramite Azure Compute Gallery). La funzionalità richiede di fornire informazioni sul tenant e sulla sottoscrizione condivisi per le connessioni host associate.

Nota:

Assicurarsi di aver configurato le impostazioni necessarie in Azure per abilitare la condivisione di immagini tra tenant. Per ulteriori informazioni, vedere Condividere le immagini tra tenant.

Completare i seguenti passaggi per una connessione:

  1. Da Studio, selezionare Hosting nel riquadro sinistro.
  2. Selezionare la connessione e quindi selezionare Modifica connessione nella barra delle azioni.

    Tenant condivisi

  3. In Tenant condivisi, eseguire le operazioni seguenti:
    1. Fornire l’ID applicazione e il segreto dell’applicazione associati alla sottoscrizione della connessione. DaaS utilizza queste informazioni per l’autenticazione a Microsoft Entra ID.
    2. Aggiungere tenant e sottoscrizioni che condividono Azure Compute Gallery con la sottoscrizione della connessione. È possibile aggiungere fino a otto tenant condivisi e otto sottoscrizioni per ogni tenant.
  4. Al termine, selezionare Applica per applicare le modifiche apportate e mantenere la finestra aperta, oppure selezionare OK per applicare le modifiche e chiudere la finestra.

Implementare la condivisione di immagini tramite PowerShell

Questa sezione illustra i processi di condivisione delle immagini tramite PowerShell:

    -  [Selezionare un'immagine da una sottoscrizione diversa](#select-an-image-from-a-different-subscription)
    -  [Aggiornare le proprietà personalizzate della connessione di hosting con gli ID tenant condivisi](#update-hosting-connection-custom-properties-with-shared-tenant-ids)
-  [Selezionare un'immagine da un tenant diverso](#select-an-image-from-a-different-tenant)

Selezionare un’immagine da una sottoscrizione diversa

È possibile selezionare un’immagine in Azure Compute Gallery che appartiene a una sottoscrizione condivisa diversa nello stesso tenant di Azure per creare e aggiornare i cataloghi MCS utilizzando i comandi PowerShell.

  1. Nella cartella radice dell’unità di hosting, Citrix crea una nuova cartella di sottoscrizione condivisa denominata sharedsubscription.
  2. Elencare tutte le sottoscrizioni condivise in un tenant.

    
    Get-ChildItem -Path "XDhyp:\HostingUnits\azres\sharedsubscription.folder"
    
    <!--NeedCopy-->
    
  3. Selezionare una sottoscrizione condivisa e quindi elencare tutti i gruppi di risorse condivisi di tale sottoscrizione condivisa.

    
    Get-ChildItem -Path "XDhyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription"
    
    <!--NeedCopy-->
    
  4. Selezionare un gruppo di risorse e quindi elencare tutte le gallerie di tale gruppo di risorse.

    
    Get-ChildItem -Path "XDhyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription\ xyz.resourcegroup"
    
    <!--NeedCopy-->
    
  5. Selezionare una galleria e quindi elencare tutte le definizioni di immagine di tale galleria.

    
    Get-ChildItem -Path "XDhyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription\xyz.resourcegroup\testgallery.gallery"
    
    <!--NeedCopy-->
    
  6. Selezionare una definizione di immagine e quindi elencare tutte le versioni di immagine di tale definizione di immagine.

    
    Get-ChildItem -Path "XDhyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription\xyz.resourcegroup\sigtestdef.imagedefinition"
    
    <!--NeedCopy-->
    
  7. Creare e aggiornare un catalogo MCS utilizzando i seguenti elementi:

    -  Gruppo di risorse
    -  Galleria
    -  Definizione dell'immagine della galleria
    -  Versione dell'immagine della galleria
    

Aggiornare le proprietà personalizzate della connessione di hosting con gli ID tenant condivisi

    -  Utilizzare `Set-Item` per aggiornare le proprietà personalizzate della connessione di hosting con gli ID tenant condivisi e gli ID sottoscrizione. Aggiungere una proprietà `SharedTenants` in `CustomProperties`. Il formato di `Shared Tenants` è:

[{"Tenant":"94367291-119e-457c-bc10-25337231f7bd","Subscriptions":["7bb42f40-8d7f-4230-a920-be2781f6d5d9"]},{"Tenant":"50e83564-c4e5-4209-b43d-815c45659564","Subscriptions":["06ab8944-6a88-47ee-a975-43dd491a37d0"]}]

<!--NeedCopy-->

Ad esempio:


Set-Item -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`">
<Property xsi:type=`"StringProperty`" Name=`"SubscriptionId`" Value=`"123`" />
        -  <Property xsi:type=`"StringProperty`" Name=`"ManagementEndpoint`" Value=`"https://management.azure.com/`" />
<Property xsi:type=`"StringProperty`" Name=`"AuthenticationAuthority`" Value=`"https://login.microsoftonline.com/`" />
<Property xsi:type=`"StringProperty`" Name=`"StorageSuffix`" Value=`"core.windows.net`" />
<Property xsi:type=`"StringProperty`" Name=`"TenantId`" Value=`"123abc`" />
<Property xsi:type=`"StringProperty`" Name=`"SharedTenants`" Value=`"`[ { 'Tenant':'123abc', 'Subscriptions':['345', '567'] } ]`"` />
</CustomProperties>"
-LiteralPath @("XDHyp:\Connections\aazure") -PassThru -UserName "advc345" -SecurePassword
$psd

<!--NeedCopy-->

Nota:

È possibile aggiungere più di un tenant. Ogni tenant può avere più di una sottoscrizione.

Selezionare un’immagine da un tenant diverso

    -  È possibile selezionare un'immagine nella Azure Compute Gallery che appartiene a un tenant Azure diverso per creare e aggiornare cataloghi MCS utilizzando i comandi PowerShell.
    1. Nella cartella radice dell’unità di hosting, Citrix crea una nuova cartella di sottoscrizione condivisa denominata sharedsubscription.
    1. Elencare tutte le sottoscrizioni condivise. Original line:
    
     -  Get-ChildItem XDHyp:\HostingUnits\azres\sharedsubscription.folder
    
     <!--NeedCopy-->
    
     -  1.  Selezionare una sottoscrizione condivisa, quindi elencare tutti i gruppi di risorse condivisi di tale sottoscrizione condivisa.
    
    
     Get-ChildItem XDHyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription
    
     <!--NeedCopy-->
    
      1. Selezionare un gruppo di risorse, quindi elencare tutte le gallerie di tale gruppo di risorse.
    
     Get-ChildItem XDHyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription\ xyz.resourcegroup
    
     <!--NeedCopy-->
    
  1. Selezionare una galleria, quindi elencare tutte le definizioni di immagine di tale galleria.

    
    Get-ChildItem XDHyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription\xyz.resourcegroup\efg.gallery
    
    <!--NeedCopy-->
    
  2. Selezionare una definizione di immagine, quindi elencare tutte le versioni di immagine di tale definizione di immagine.

    
        +  Get-ChildItem XDHyp:\HostingUnits\azres\image.folder\abc123.sharedsubscription\xyz.resourcegroup\efg.gallery\hij.imagedefinition
    
    <!--NeedCopy-->
    
    +  1.  Creare e aggiornare un catalogo MCS utilizzando i seguenti elementi:
    
    • Gruppo di risorse
    • Galleria
    • Definizione di immagine della galleria
    • Versione di immagine della galleria

Creare un ambiente sicuro per il traffico gestito da Azure

MCS consente che il traffico di rete (chiamate API da Citrix Cloud all’hypervisor Azure) venga instradato tramite i Cloud Connector nel proprio ambiente. Questa implementazione aiuta a bloccare la sottoscrizione Azure per consentire il traffico di rete da specifici indirizzi IP. Per fare ciò, aggiungere ProxyHypervisorTrafficThroughConnector in CustomProperties. Dopo aver impostato le proprietà personalizzate, è possibile configurare i criteri Azure per avere accesso privato al disco per i dischi gestiti da Azure.

Se si configura il criterio Azure per creare automaticamente gli accessi al disco per ogni nuovo disco per utilizzare endpoint privati, non è possibile caricare o scaricare più di cinque dischi o snapshot contemporaneamente con lo stesso oggetto di accesso al disco, come imposto da Azure. Questo limite è per ogni catalogo di macchine se si configura il criterio Azure a livello di gruppo di risorse e per tutti i cataloghi di macchine se si configura il criterio Azure a livello di sottoscrizione. Se non si configura il criterio Azure per creare automaticamente gli accessi al disco per ogni nuovo disco per utilizzare endpoint privati, il limite di cinque operazioni simultanee non viene applicato.

Nota: - > Attualmente, questa funzionalità non è supportata per Connector Appliance. Per le limitazioni di Azure relative a questa funzionalità, vedere Limitare l’accesso di importazione/esportazione per i dischi gestiti utilizzando Azure Private Link.

Abilitare il proxy

    +  Per abilitare il proxy, impostare le proprietà personalizzate come segue sulla connessione host:

    +  1.  Aprire una finestra PowerShell utilizzando l'SDK PowerShell remoto. Per maggiori informazioni, vedere <https://docs.citrix.com/en-us/citrix-daas/sdk-api.html#citrix-virtual-apps-and-desktops-remote-powershell-sdk/>.
    +  1.  Eseguire i seguenti comandi:

```

    +  Add-PSSnapin citrix*.
    +  cd XDHyp:\Connections\
dir

<!--NeedCopy--> ```
  1. Copiare le CustomProperties dalla connessione a un blocco note e aggiungere l’impostazione della proprietà <Property xsi:type="StringProperty" Name="ProxyHypervisorTrafficThroughConnector" Value="True" /> alle CustomProperties per abilitare il proxy. Ad esempio:

    
    <CustomProperties xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.citrix.com/2014/xd/machinecreation">
    <Property xsi:type="StringProperty" Name="SubscriptionId" Value="4991xxxx-2xxx-4xxx-8xxx-ff59a830xxxx" />
    <Property xsi:type="StringProperty" Name="ManagementEndpoint" Value="https://management.azure.com/" />
    <Property xsi:type="StringProperty" Name="AuthenticationAuthority" Value="https://login.microsoftonline.com/" />
    <Property xsi:type="StringProperty" Name="StorageSuffix" Value="core.windows.net" />
    <Property xsi:type="StringProperty" Name="TenantId" Value="5cxxxxx-9xxx-4xxx-8xxx-dffe3efdxxxx" />
    <Property xsi:type="StringProperty" Name="ProxyHypervisorTrafficThroughConnector" Value="True" />
    </CustomProperties>
    
    <!--NeedCopy-->
    
    1. Nella finestra PowerShell, assegnare una variabile alle proprietà personalizzate modificate. Ad esempio:
    
     $customProperty = '<CustomProperties xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.citrix.com/2014/xd/machinecreation">
     <Property xsi:type="StringProperty" Name="SubscriptionId" Value="4991xxxx-2xxx-4xxx-8xxx-ff59a830xxxx" />
     <Property xsi:type="StringProperty" Name="ManagementEndpoint" Value="https://management.azure.com/" />
     <Property xsi:type="StringProperty" Name="AuthenticationAuthority" Value="https://login.microsoftonline.com/" />
     <Property xsi:type="StringProperty" Name="StorageSuffix" Value="core.windows.net" />
     <Property xsi:type="StringProperty" Name="TenantId" Value="5cxxxxx-9xxx-4xxx-8xxx-dffe3efdxxxx" />
     <Property xsi:type="StringProperty" Name="ProxyHypervisorTrafficThroughConnector" Value="True" />
     </CustomProperties>'
    
     <!--NeedCopy-->
    
  1. Eseguire $cred = Get-Credential. Se richiesto, fornire le credenziali di connessione. Le credenziali sono l’ID applicazione Azure e il segreto.
  2. Eseguire Set-Item -PSPath XDHyp:\Connections\<Connection_Name> -CustomProperties $customProperty -username $cred.username -Securepassword $cred.password.

    Importante:

    Se si riceve un messaggio che indica che SubscriptionId è mancante, sostituire tutte le virgolette doppie (“) con un backtick seguito da virgolette doppie (`”) nella proprietà personalizzata. Ad esempio:

    ```

    <CustomProperties xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance” xmlns="http://schemas.citrix.com/2014/xd/machinecreation”> <Property xsi:type="StringProperty” Name="SubscriptionId” Value="4991xxxx-2xxx-4xxx-8xxx-ff59a830xxxx” /> <Property xsi:type="StringProperty” Name="ManagementEndpoint” Value="https://management.azure.com/” /> <Property xsi:type="StringProperty” Name="AuthenticationAuthority” Value="https://login.microsoftonline.com/” /> <Property xsi:type="StringProperty” Name="StorageSuffix” Value="core.windows.net” /> <Property xsi:type="StringProperty” Name="TenantId” Value="5cxxxxx-9xxx-4xxx-8xxx-dffe3efdxxxx” /> <Property xsi:type="StringProperty” Name="ProxyHypervisorTrafficThroughConnector” Value="True” />

  • </CustomProperties>

    ```

  1. Eseguire dir per verificare le impostazioni CustomProperties aggiornate.
  • Opzione per utilizzare il proxy di sistema sui Citrix Cloud Connector per il traffico API Azure reindirizzato

  • Per instradare tutto il traffico esterno tramite un proxy non trasparente, configurare la connessione host con la proprietà personalizzata UseSystemProxyForHypervisorTrafficOnConnectors. Questo reindirizza il traffico Internet API Azure sui Citrix Cloud Connector tramite il proxy di sistema.

  • Eseguire gli stessi passaggi descritti in Abilitare il proxy per configurare la connessione host con la proprietà personalizzata. Tuttavia, assicurarsi di aggiungere l’impostazione della proprietà <Property xsi:type="StringProperty" Name="UseSystemProxyForHypervisorTrafficOnConnectors" Value="True" /> alle CustomProperties per abilitare il proxy.

<Property xsi:type="StringProperty" Name="UseSystemProxyForHypervisorTrafficOnConnectors" Value="True" />

<!--NeedCopy-->

Esempio:


<CustomProperties xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.citrix.com/2014/xd/machinecreation">
<Property xsi:type="StringProperty" Name="SubscriptionId" Value="4991xxxx-2xxx-4xxx-8xxx-ff59a830xxxx" />
<Property xsi:type="StringProperty" Name="ManagementEndpoint" Value="https://management.azure.com/" />
<Property xsi:type="StringProperty" Name="AuthenticationAuthority" Value="https://login.microsoftonline.com/" />
<Property xsi:type="StringProperty" Name="StorageSuffix" Value="core.windows.net" />
<Property xsi:type="StringProperty" Name="TenantId" Value="5cxxxxx-9xxx-4xxx-8xxx-dffe3efdxxxx" />
<Property xsi:type="StringProperty" Name="ProxyHypervisorTrafficThroughConnector" Value="True" />
<Property xsi:type="StringProperty" Name="UseSystemProxyForHypervisorTrafficOnConnectors" Value="True" />
</CustomProperties>

<!--NeedCopy-->

Nota:

Dopo aver impostato questa proprietà, il proxy configurato nelle impostazioni netsh winhttp sui Citrix Cloud Connector viene utilizzato per il traffico in uscita verso il provider di servizi cloud.

Gestire il segreto dell’applicazione e la data di scadenza del segreto

Assicurarsi di modificare il segreto dell’applicazione per una connessione prima della scadenza del segreto. Si riceverà un avviso in Studio prima della scadenza della chiave segreta.

Creare un segreto dell’applicazione in Azure

È possibile creare un segreto dell’applicazione per una connessione tramite il portale di Azure.

  1. Selezionare Microsoft Entra ID.
  2. Da Registrazioni app in Microsoft Entra ID, selezionare l’applicazione.
  3. Andare a Certificati e segreti.
  4. Fare clic su Segreti client > Nuovo segreto client.

    Creare un segreto dell'applicazione

  5. Fornire una descrizione del segreto e specificare una durata. Al termine, selezionare Aggiungi.

    Nota:

    - - > Assicurarsi di salvare il segreto client perché non sarà possibile recuperarlo in seguito.

  6. Copiare il valore del segreto client e la data di scadenza.
  7. In Studio, modificare la connessione corrispondente e sostituire il contenuto nei campi Segreto dell’applicazione e Data di scadenza del segreto con i valori copiati.

Modificare la data di scadenza del segreto

È possibile utilizzare Studio per aggiungere o modificare la data di scadenza del segreto dell’applicazione in uso.

  1. Nella procedura guidata Aggiungi connessione e risorse, fare clic con il pulsante destro del mouse su una connessione e fare clic su Modifica connessione.
  2. Nella pagina Proprietà connessione, fare clic su Data di scadenza del segreto per aggiungere o modificare la data di scadenza del segreto dell’applicazione in uso.

Modificare la data di scadenza del segreto

Creare una connessione host utilizzando l’identità gestita di Azure

È possibile creare una connessione host a Microsoft Azure Resource Manager utilizzando l’identità gestita di Azure. Le identità gestite di Azure offrono un modo sicuro e scalabile per accedere ai servizi di Azure senza la necessità di gestire le credenziali. Questo approccio elimina i rischi associati all’archiviazione, alla rotazione e alla gestione dei segreti.

La Modalità di autenticazione offre tre opzioni:

  • AppClientSecret
  • SystemAssignedManagedIdentity
  • UserAssignedManagedIdentity

Prima di iniziare

Di seguito sono riportati i passaggi da eseguire prima di creare la connessione host utilizzando l’identità gestita di Azure:

  1. Installare un Citrix Cloud Connector™ in una VM di Azure.
  2. Abilitare l’identità gestita di Azure su quella VM di Cloud Connector.

    • Per l’identità gestita assegnata dall’utente:

      1. Nel portale di Azure, creare un’identità gestita assegnata dall’utente. Per informazioni, vedere Creare e assegnare un’identità gestita assegnata dall’utente.
      2. Assegnare i ruoli di Azure all’identità gestita. Vedere Autorizzazioni di Azure richieste.
      3. Creare una VM di Azure come Cloud Connector e aggiungervi l’identità assegnata dall’utente.
    • Per l’identità gestita assegnata dal sistema:

      1. Aprire il portale di Azure e andare alla VM.
      2. Selezionare il pannello Identità nelle impostazioni della VM.
      3. Nella scheda Assegnata dal sistema, impostare lo stato su Attivato.
      4. Fare clic su Salva.
      5. Concedere le Autorizzazioni di Azure richieste.

      Nota:

      Se si abilita l’identità gestita assegnata dal sistema su una VM di Cloud Connector e la si utilizza per creare una connessione host, è comunque possibile creare connessioni host con l’identità gestita assegnata dal sistema anche dopo averla disabilitata sulla VM di Cloud Connector. La creazione di connessioni host può avere successo anche 24 ore dopo la disabilitazione dell’identità. Ciò accade perché i token di identità gestita vengono memorizzati nella cache dall’infrastruttura Azure sottostante. Per ulteriori informazioni, vedere I token di identità gestita vengono memorizzati nella cache?.

Creare la connessione host con l’identità gestita di Azure utilizzando Studio

Nella procedura guidata Aggiungi connessione e risorse:

  1. Nella pagina Connessione:
    1. Selezionare Crea una nuova connessione, il tipo di connessione Microsoft Azure e l’ambiente Azure.
    2. Selezionare gli strumenti da utilizzare per creare le macchine virtuali e quindi selezionare Avanti.
    1. Nella pagina Dettagli connessione, selezionare la Modalità di autenticazione.
    • Per l’identità gestita assegnata dall’utente, immettere le seguenti impostazioni. Dopo aver inserito i dettagli, selezionare Avanti per procedere alle pagine successive. Non è possibile proseguire oltre questa pagina finché non si forniscono dettagli validi.

      • ID sottoscrizione: immettere l’ID della sottoscrizione di Azure. Per ottenere l’ID della sottoscrizione, accedere al portale di Azure e passare a Sottoscrizioni > Panoramica.
      • ID di Active Directory (ID tenant): immettere l’ID della directory (tenant) dell’applicazione registrata con Microsoft Entra ID.
      • ID client: immettere l’ID client dell’identità gestita creata nel portale di Azure.
      • URL di autenticazione: questo campo viene popolato automaticamente e non è modificabile.
      • URL di gestione: questo campo viene popolato automaticamente e non è modificabile.
      • Suffisso di archiviazione: questo campo viene popolato automaticamente e non è modificabile.
    • Per l’identità gestita assegnata dal sistema, immettere le seguenti impostazioni. Dopo aver inserito i dettagli, selezionare Avanti per procedere alle pagine successive. Non è possibile proseguire oltre questa pagina finché non si forniscono dettagli validi.

      • ID sottoscrizione: immettere l’ID della sottoscrizione di Azure. Per ottenere l’ID della sottoscrizione, accedere al portale di Azure e passare a Sottoscrizioni > Panoramica.
      • ID di Active Directory (ID tenant): immettere l’ID della directory (tenant) dell’applicazione registrata con Microsoft Entra ID.
      • URL di autenticazione: questo campo viene popolato automaticamente e non è modificabile.
      • URL di gestione: questo campo viene popolato automaticamente e non è modificabile.
      • Suffisso di archiviazione: questo campo viene popolato automaticamente e non è modificabile.

Creare la connessione host con l’identità gestita di Azure utilizzando PowerShell

È possibile creare questa connessione host utilizzando una nuova CustomProperty AuthenticationMode. La AuthenticationMode offre tre opzioni: AppClientSecret, SystemAssignedManagedIdentity e UserAssignedManagedIdentity. Di seguito è riportata la descrizione delle opzioni della modalità di autenticazione:

-  `AppClientSecret`: Questo è il valore predefinito. Richiede un ID applicazione e un segreto.
-  `UserAssignedManagedIdentity`: Richiede un ID client da fornire tramite un nome utente.
  • SystemAssignedManagedIdentity: Non richiede alcun input. Anche se si fornisce un ID client, questo viene ignorato.

Nota:

Quando si utilizza PowerShell, il parametro ProxyHypervisorTrafficThroughConnector deve essere impostato su true per utilizzare l’identità gestita.

  1. Aprire una finestra PowerShell.
  2. Eseguire asnp citrix* per caricare i moduli PowerShell specifici di Citrix.
  3. Creare connessioni host. Ad esempio:

    • Per l’identità gestita assegnata dall’utente:

      
       $UserName = "should be the Client ID of the user-assigned managed identity"
       $Password = "It can be any string.Not used"
       
       $CustomProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">' `
       +  '<Property xsi:type="StringProperty" Name="SubscriptionId" Value="' + $SubscriptionId + '" />'`
       +  '<Property xsi:type="StringProperty" Name="ManagementEndpoint" Value="https://management.azure.com/" />'`
       +  '<Property xsi:type="StringProperty" Name="AuthenticationAuthority" Value="https://login.microsoftonline.com/" />'`
       +  '<Property xsi:type="StringProperty" Name="StorageSuffix" Value="core.windows.net" />'`
       +  '<Property xsi:type="StringProperty" Name="TenantId" Value="' + $TenantId + '" />'`
       +  '<Property xsi:type="StringProperty" Name="ProxyHypervisorTrafficThroughConnector" Value="True" />'`
       +  '<Property xsi:type="StringProperty" Name="AuthenticationMode" Value="UserAssignedManagedIdentity" />'`
       +  '</CustomProperties>'
       
       New-Item -ConnectionType "Custom" `
       -CustomProperties $CustomProperties `
       -HypervisorAddress @($HypervisorAddress) `
       -Path @("XDHyp:\Connections\$($ConnectionName)") `
       -Metadata $Metadata `
       -Persist `
       -PluginId "AzureRmFactory" `
       -Scope @() `
       -Password $Password `
       -UserName $UserName `
       -ZoneUid $zoneUid
      
       <!--NeedCopy-->
      
    • Per l’identità gestita assegnata dal sistema:

      
       $UserName = "It can be any string. Not used"
       $Password = "It can be any string. Not used"  
       $CustomProperties = '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">' `
       +  '<Property xsi:type="StringProperty" Name="SubscriptionId" Value="' + $SubscriptionId + '" />'`
       +  '<Property xsi:type="StringProperty" Name="ManagementEndpoint" Value="https://management.azure.com/" />'`
       +  '<Property xsi:type="StringProperty" Name="AuthenticationAuthority" Value="https://login.microsoftonline.com/" />'`
       +  '<Property xsi:type="StringProperty" Name="StorageSuffix" Value="core.windows.net" />'`
       +  '<Property xsi:type="StringProperty" Name="TenantId" Value="' + $TenantId + '" />'`
       +  '<Property xsi:type="StringProperty" Name="ProxyHypervisorTrafficThroughConnector" Value="True" />'`
       +  '<Property xsi:type="StringProperty" Name="AuthenticationMode" Value="SystemAssignedManagedIdentity" />'`
       +  '</CustomProperties>'
       
       New-Item -ConnectionType "Custom" `
       -CustomProperties $CustomProperties `
       -HypervisorAddress @($HypervisorAddress) `
       -Path @("XDHyp:\Connections\$($ConnectionName)") `
       -Metadata $Metadata `
       -Persist `
       -PluginId "AzureRmFactory" `
       -Scope @() `
       -Password $Password `
       -UserName $UserName `
       -ZoneUid $zoneUid
      
       <!--NeedCopy-->
      

Gestire l’identità gestita di Azure di una connessione di hosting esistente

Usare Studio

Dopo aver creato una connessione di hosting, è possibile scegliere di aggiornare la connessione di hosting esistente per avere:

  • Identità gestita assegnata dal sistema
  • Identità gestita assegnata dall’utente
  • Una nuova identità gestita assegnata dall’utente
  1. Da Studio, selezionare Hosting dal riquadro sinistro.
  2. Selezionare la connessione e quindi selezionare Modifica connessione nella barra delle azioni.
  3. Nella pagina Proprietà connessione che viene visualizzata, fare clic su Modifica modalità di autenticazione. È ora possibile scegliere di aggiornare la modalità di autenticazione.

    • Fare clic su Identità gestita assegnata dall’utente per utilizzare l’identità gestita assegnata dall’utente per quella connessione di hosting. Seguire le istruzioni per compilare l’ID client.
    • Fare clic su Identità gestita assegnata dal sistema per utilizzare l’identità gestita assegnata dal sistema per quella connessione di hosting.

Usare PowerShell

È anche possibile aggiornare una connessione host esistente utilizzando PowerShell per utilizzare un’identità assegnata dal sistema o un’identità gestita assegnata dall’utente. Ad esempio, eseguire i seguenti comandi PowerShell:

  1. Aprire una finestra PowerShell.
  2. Eseguire asnp citrix* per caricare i moduli PowerShell specifici di Citrix.
  3. Eseguire i seguenti comandi:

    ```

    $connName = “ConnectionName” $conn = get-item XDHyp:\Connections$connName

$conn.CustomProperties

<!--NeedCopy--> ```
  1. Modificare ProxyHypervisorTrafficThroughConnector in True e aggiungere la proprietà personalizzata per AuthenticationMode impostata su SystemAssignedManagedIdentity o UserAssignedManagedIdentity. Ad esempio:

    
    $customProps = '<CustomProperties xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.citrix.com/2014/xd/machinecreation"><Property xsi:type="StringProperty" Name="SubscriptionId" Value="subscriptionId" /><Property xsi:type="StringProperty" Name="ManagementEndpoint" Value="https://management.azure.com/" /><Property xsi:type="StringProperty" Name="AuthenticationAuthority" Value="https://login.microsoftonline.com/" /><Property xsi:type="StringProperty" Name="StorageSuffix" Value="core.windows.net" /><Property xsi:type="StringProperty" Name="TenantId" Value="tenantId" /><Property xsi:type="StringProperty" Name="AzureAdDeviceManagement" Value="false" /><Property xsi:type="StringProperty" Name="ProxyHypervisorTrafficThroughConnector" Value="true" /><Property xsi:type="StringProperty" Name="AuthenticationMode" Value="SystemAssignedManagedIdentity" /></CustomProperties>'
    
    <!--NeedCopy-->
    
  2. Eseguire $cred = Get-Credential. Inserire qualsiasi cosa qui.

  3. Eseguire Set-Item -PSPath XDHyp:\Connections\$connName -CustomProperties $CustomProperties -username $cred.username -Securepassword $cred.password.

Zone estese di Azure

Le Zone estese di Azure sono estensioni a ingombro ridotto delle regioni Azure esistenti, che consentono alle organizzazioni di eseguire carichi di lavoro più vicini ai propri utenti per migliorare le prestazioni e la conformità. MCS su Azure ora supporta il provisioning e la gestione dell’alimentazione per le VM nelle Zone estese.

Per saperne di più sulle Zone estese di Azure, consultare la documentazione Microsoft: Documentazione sulle Zone estese di Azure.

Casi d’uso

Questa funzionalità è applicabile per cataloghi persistenti e non persistenti:

  • VM con sola gestione dell’alimentazione: È possibile importare le VM esistenti della zona estesa in un catalogo con sola gestione dell’alimentazione e gestirne l’alimentazione con Citrix MCS.

  • VM con provisioning MCS: È possibile eseguire il provisioning di nuove VM in una Zona estesa e gestirle con MCS. Questa funzionalità include anche il supporto per i flussi di lavoro di gestione delle immagini.

Limitazioni

Attualmente esistono diverse limitazioni per l’utilizzo delle Zone estese di Azure. Molte di queste limitazioni sono dovute alle attuali restrizioni di Azure:

  • Gli host dedicati non sono supportati.
  • Le prenotazioni di capacità non sono supportate.
  • I gruppi di posizionamento di prossimità non sono supportati.
  • Le VM Spot non sono supportate.
  • Le Zone di disponibilità non sono supportate nelle Zone estese.
  • Sono supportati solo i tipi di archiviazione StandardSSD_LRS e Premium_LRS.
  • Attualmente non è possibile utilizzare la funzionalità UseSharedImageGallery per salvare un’immagine masterizzata in una Azure Compute Gallery (o Shared Image Gallery) in una Zona estesa. Di conseguenza, i dischi del sistema operativo effimeri non sono supportati.
  • Se si utilizza una versione dell’immagine di Azure Compute Gallery come immagine master, assicurarsi che la replica sia stata completata nella Zona estesa prima di tentare di utilizzarla. Il tentativo di utilizzare la versione dell’immagine prima del completamento della replica potrebbe comportare un errore di distribuzione.

Prerequisiti

Prima di utilizzare le Zone estese, assicurarsi di aver completato i seguenti passaggi prerequisiti:

  1. Preparare le risorse Citrix:

    1. Creare una rete virtuale nella propria Zona estesa.
    2. Creare immagini master e snapshot secondo necessità.

Autorizzazioni richieste

Per creare un catalogo in una zona estesa, l’entità servizio deve disporre della seguente autorizzazione: Microsoft.EdgeZones/extendedZones/read.

Per ulteriori informazioni sulle autorizzazioni minime richieste, vedere Autorizzazioni minime.

Passaggi di configurazione

  1. Creare un’unità di hosting in una zona estesa

    Le zone estese, che utilizzano il tipo .extendedzone, sono elencate insieme alle regioni nell’inventario Citrix MCS. Per il provisioning in una zona estesa, è necessario creare una nuova unità di hosting collegata a tale zona estesa.

    Esempio: Per creare un’unità di hosting nella zona estesa di Los Angeles

    
    $RootPath = "XDHyp:\Connections\MyConnectionName\Los Angeles.extendedzone" 
    
    $NetworkPath = "XDHyp:\Connections\MyConnectionName\Los Angeles.extendedzone\virtualprivatecloud.folder\MyResourceGroup.resourcegroup\MyExtendedZoneNetwork.virtualprivatecloud\MyExtendedZoneSubnet.network" 
    
    $HostingUnitPath = "XDHyp:\HostingUnits\MyHostingUnitName" 
    
    New-Item -HypervisorConnectionName MyConnectionName -NetworkPath @($NetworkPath) -Path @($HostingUnitPath) -RootPath $RootPath -StoragePath @() 
    
    <!--NeedCopy-->
    
  2. Creare un catalogo MCS in una zona estesa

    Dopo aver creato l’unità di hosting, procedere con la creazione del catalogo utilizzando Studio o PowerShell. Assicurarsi che il catalogo faccia riferimento all’unità di hosting della zona estesa.

Risoluzione dei problemi

In caso di problemi, verificare quanto segue:

  1. Assicurarsi che la sottoscrizione sia registrata per le zone estese.
    1. Verificare che la sottoscrizione sia registrata con il provider di risorse Microsoft.EdgeZones.
    2. Assicurarsi che ogni zona estesa sia registrata individualmente.
  2. Verificare che l’entità servizio disponga della nuova autorizzazione.

    1. L’entità servizio deve disporre dell’autorizzazione Microsoft.EdgeZones/extendedZones/read.

Gli elementi dell’inventario nelle zone estese potrebbero essere visualizzati come “Zona estesa sconosciuta” se la registrazione o le autorizzazioni sono mancanti.

Nota:

Se si crea un catalogo nella regione padre utilizzando un’immagine master da una zona estesa, sono comunque necessarie la registrazione e le autorizzazioni per la zona estesa.

Utilizzare un gruppo di sicurezza di rete pre-creato

Creare un gruppo di sicurezza di rete Deny-All per la preparazione dell’immagine invece di richiedere a Citrix di creare e modificare l’NSG. Modificare le proprietà personalizzate dell’unità di hosting utilizzando un comando PowerShell Set-Item per includere il parametro NsgForPreparation per fornire il gruppo di sicurezza di rete Deny-All.

Prerequisiti

Configurare le seguenti autorizzazioni richieste per un’entità servizio:

  • Microsoft.Network/networkSecurityGroups/join/action: Associa un gruppo di sicurezza di rete a una subnet o a un’interfaccia di rete
  • Microsoft.Network/networkSecurityGroups/read: Ottiene il gruppo di sicurezza di rete
  • Microsoft.Network/networkSecurityGroups/securityRules/read: Ottiene la regola

Aggiungere il gruppo di sicurezza di rete Deny-All pre-creato

Per aggiungere il gruppo di sicurezza di rete Deny-All pre-creato, impostare le proprietà personalizzate come segue sull’unità di hosting:

  1. Aprire una finestra PowerShell utilizzando l’SDK PowerShell remoto.
  2. Eseguire i seguenti comandi:

    
    Add-PSSnapin citrix*.
    cd XDHyp:\HostingUnits\
    Dir
    
    <!--NeedCopy-->
    
  3. Selezionare un’unità di hosting per recuperare i dettagli:

    
    Get-Item "XDHyp:\HostingUnits\<hostingunitname>"
    
    <!--NeedCopy-->
    
  4. Copiare le CustomProperties in un blocco note e aggiungere l’impostazione della proprietà <Property xsi:type="StringProperty” Name="NsgForPreparation” Value="{ResourceGroupName}/{NetworkSecurityGroupName}"/>. Ad esempio:

    
    <CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"NsgForPreparation`" Value=`{ResourceGroupName}/{NetworkSecurityGroupName}`"/></CustomProperties>
    
    <!--NeedCopy-->
    
  5. Nella finestra PowerShell, assegnare una variabile alle proprietà personalizzate modificate. Ad esempio:

    
    $customProperty = "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"NsgForPreparation`" Value=`"{ResourceGroupName}/{NetworkSecurityGroupName}`"/></CustomProperties>"
    
    <!--NeedCopy-->
    
  6. Eseguire $cred = Get-Credential. Se richiesto, fornire le credenziali di connessione. Le credenziali sono l’ID applicazione Azure e il segreto.
  7. Eseguire il seguente comando.

    
    Set-Item -PSPath XDHyp:\HostingUnits\<hostingunitname> -CustomProperties $customProperty -username $cred.username -Securepassword $cred.password
    
    <!--NeedCopy-->
    

    Importante:

    Se viene visualizzato un messaggio che indica che SubscriptionId è mancante, sostituire tutte le virgolette doppie (“) con un backtick seguito da virgolette doppie (`”) nella proprietà personalizzata.

  8. Eseguire dir per verificare le impostazioni CustomProperties aggiornate.

Nota:

Sono necessari più di un minuto affinché gli aggiornamenti vengano applicati.

Recuperare i dettagli del gruppo di sicurezza di rete

Per recuperare i dettagli del gruppo di sicurezza di rete, recuperare prima i gruppi di risorse che contengono il gruppo di sicurezza di rete, quindi recuperare il gruppo di sicurezza di rete in base al nome del gruppo di risorse.

  1. Recuperare i gruppi di risorse che contengono il gruppo di sicurezza di rete. Ad esempio:

    
    Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx04con01unit01" -ResourceType resourceGroup -MaxRecords 5 -AdditionalDataFilter '{"containedresourcetypes": ["networksecuritygroup"]}'
    
    <!--NeedCopy-->
    
  2. Recuperare il gruppo di sicurezza di rete in base al nome del gruppo di risorse. Ad esempio:

    
    Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx04con01unit01" -ResourceType securitygroup -MaxRecords 5 -AdditionalDataFilter '{"location": ["eastus", "westus"], "resourcegroup":["resourcegroupname"]}'
    
    <!--NeedCopy-->
    

Filtrare i gruppi di risorse vuoti

Utilizzare il comando PowerShell Get-HypInventoryItem per filtrare i gruppi di risorse vuoti durante la selezione di un’immagine master, un profilo macchina o un’immagine preparata durante la creazione del catalogo macchine.

  • Esempi:

  • Recuperare il numero massimo di record in una pagina:

    
     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx04con01unit01" -ResourceType resourceGroup -MaxRecords 5
    
     <!--NeedCopy-->
    
  • Recuperare il numero massimo di record in una pagina e filtrare per trovare i contenitori di risorse che dispongono di risorse specifiche.

    
     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx04con01unit01" -ResourceType resourceGroup -MaxRecords 5 -AdditionalDataFilter '{"containedresourcetypes": ["vm", "manageddisk", "snapshot", "imageversion", "storageaccount"]}'
    
     <!--NeedCopy-->
    
  • Recuperare con salto per indicare direttamente la pagina e filtrare per trovare i contenitori di risorse che dispongono di risorse specifiche.

    
     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx04con01unit01" -ResourceType resourceGroup -MaxRecords 5 -skip 20 -AdditionalDataFilter '{"containedresourcetypes": ["vm", "manageddisk", "snapshot", "imageversion", "storageaccount"]}'
    
     <!--NeedCopy-->
    
  • Utilizzare un token per recuperare la pagina successiva e filtrare per trovare i contenitori di risorse che dispongono di risorse specifiche.

    
     -  Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx04con01unit01" -ResourceType resourceGroup -MaxRecords 5 -AdditionalDataFilter '{"containedresourcetypes": ["vm", "manageddisk", "snapshot", "imageversion", "storageaccount"]}' -ContinuationToken 'ew0KICAiJGlkIjogIjEiLA0KICAiTWF4Um93cyI6IDUsDQogICJSb3dzVG9Ta2lwIjogMjUsDQogICJLdXN0b0NsdXN0ZXJVcmwiOiAiaHR0cHM6Ly9hcmctbmV1LTEzLXNmLmFyZy5jb3JlLndpbmRvd3MubmV0Ig0KfQ=='
    
     <!--NeedCopy-->
    
  • Recuperare tutti i gruppi di risorse con il tag interno Citrix e limitare il numero massimo di record con MaxRecords.

    
     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx04con01unit01" -ResourceType resourceGroup -MaxRecords 5
    
     <!--NeedCopy-->
    
  • Filtrare per profilo macchina (immagine master) con il tag interno Citrix e limitare il numero massimo di record con MaxRecords.

    
     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx04con01unit01" -ResourceType resourceGroup -MaxRecords 5 -AdditionalDataFilter '{"containedresourcetypes": ["vm", "templatespecversion"]}'
    
     <!--NeedCopy-->
    
  • Filtrare per immagine preparata con il tag interno Citrix e limitare il numero massimo di record con MaxRecords.

    
     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx04con01unit01" -ResourceType resourceGroup -MaxRecords 5 -AdditionalDataFilter '{"containedresourcetypes": ["manageddisk", "snapshot", "imageversion"]}'
    
     <!--NeedCopy-->
    
  • Filtrare per profilo macchina (immagine preparata) con il tag interno Citrix e limitare il numero massimo di record con MaxRecords.

    
     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx04con01unit01" -ResourceType resourceGroup -MaxRecords 5 -AdditionalDataFilter '{"containedresourcetypes": ["vm", "templatespecversion"]}'
    
     <!--NeedCopy-->
    
  • Filtrare per immagine con il tag interno Citrix e limitare il numero massimo di record con MaxRecords e posizione.

    
     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx04con01unit01" -ResourceType resourceGroup -MaxRecords 5 -AdditionalDataFilter '{"containedresourcetypes": ["manageddisk", "snapshot", "imageversion", "storageaccount"], "location": ["eastus", "westus"]}'
    
     <!--NeedCopy-->
    
  • Recuperare tutti i gruppi di risorse senza considerare i tag CitrixResource.

    
     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx04con01unit01" -ResourceType resourceGroup -MaxRecords 50 -AdditionalDataFilter '{"containedresourcetypes": ["manageddisk", "snapshot", "imageversion", "storageaccount"]}' -Force $true
    
     <!--NeedCopy-->
    

Autorizzazioni Azure richieste

Questa sezione descrive in dettaglio le autorizzazioni minime e le autorizzazioni generali richieste per Azure.

Autorizzazioni minime

Le autorizzazioni minime offrono un migliore controllo della sicurezza. Tuttavia, le nuove funzionalità che richiedono autorizzazioni aggiuntive non funzionano se vengono concesse solo le autorizzazioni minime. Questa sezione elenca le autorizzazioni minime per azione.

Creazione di una connessione host

Aggiungere una connessione host utilizzando le informazioni ottenute da Azure.


"Microsoft.Network/virtualNetworks/read",
"Microsoft.Compute/virtualMachines/read",
"Microsoft.Compute/disks/read",
"Microsoft.Resources/providers/read",
"Microsoft.Resources/subscriptions/locations/read",
"Microsoft.Resources/tenants/read",
"Microsoft.Network/networkSecurityGroups/join/action",
"Microsoft.Network/networkSecurityGroups/read",
"Microsoft.Network/networkSecurityGroups/securityRules/read",
"Microsoft.EdgeZones/extendedZones/read"

<!--NeedCopy-->

Gestione dell’alimentazione delle VM

Accendere o spegnere le istanze della macchina.


"Microsoft.Compute/virtualMachines/read",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Compute/virtualMachines/deallocate/action",
"Microsoft.Compute/virtualMachines/start/action",
"Microsoft.Compute/virtualMachines/restart/action",
"Microsoft.Insights/diagnosticsettings/delete",
"Microsoft.Insights/diagnosticsettings/read",
"Microsoft.Insights/diagnosticsettings/write",

<!--NeedCopy-->

Creazione, aggiornamento o eliminazione di VM

Creare un catalogo di macchine, quindi aggiungere, eliminare, aggiornare le macchine ed eliminare il catalogo di macchine.

Di seguito è riportato l’elenco delle autorizzazioni minime richieste quando le immagini master sono dischi gestiti o snapshot che si trovano nella stessa regione della connessione di hosting.


"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Resources/deployments/validate/action",
"Microsoft.Resources/tags/read",
"Microsoft.Resources/tags/write",
"Microsoft.Compute/virtualMachines/read",
"Microsoft.Compute/virtualMachines/write",
"Microsoft.Compute/virtualMachines/delete",
"Microsoft.Compute/virtualMachines/deallocate/action",
"Microsoft.Compute/snapshots/read",
"Microsoft.Compute/snapshots/write",
"Microsoft.Compute/snapshots/delete",
"Microsoft.Compute/snapshots/beginGetAccess/action",
"Microsoft.Compute/snapshots/endGetAccess/action",
"Microsoft.Compute/disks/read",
"Microsoft.Compute/disks/write",
"Microsoft.Compute/disks/delete",
"Microsoft.Compute/disks/beginGetAccess/action",
"Microsoft.Compute/disks/endGetAccess/action",
"Microsoft.Compute/locations/publishers/artifacttypes/types/versions/read",
"Microsoft.Compute/skus/read",
"Microsoft.Compute/virtualMachines/extensions/read",
"Microsoft.Compute/virtualMachines/extensions/write",
"Microsoft.Features/providers/features/read",
"Microsoft.Network/virtualNetworks/read",
"Microsoft.Network/virtualNetworks/subnets/join/action",
"Microsoft.Network/virtualNetworks/subnets/read",
"Microsoft.Network/networkSecurityGroups/read",
"Microsoft.Network/networkSecurityGroups/write",
"Microsoft.Network/networkSecurityGroups/delete",
"Microsoft.Network/networkSecurityGroups/join/action",
"Microsoft.Network/networkInterfaces/read",
"Microsoft.Network/networkInterfaces/write",
"Microsoft.Network/networkInterfaces/delete",
"Microsoft.Network/networkInterfaces/join/action",
"Microsoft.Network/locations/usages/read",
"Microsoft.Compute/capacityReservationGroups/capacityReservations/read",
"Microsoft.Compute/capacityReservationGroups/deploy/action"

<!--NeedCopy-->

Sono necessarie le seguenti autorizzazioni aggiuntive basate sulle autorizzazioni minime per le seguenti funzionalità:

  • Se l’immagine master è un VHD in un account di archiviazione nella stessa regione della connessione di hosting:

    
     "Microsoft.Storage/storageAccounts/read",
     "Microsoft.Storage/storageAccounts/listKeys/action",
    
     <!--NeedCopy-->
    
  • Se l’immagine master è una ImageVersion di Azure Compute Gallery (precedentemente Shared Image Gallery):

    
     "Microsoft.Compute/galleries/read",
     "Microsoft.Compute/galleries/images/read",
     "Microsoft.Compute/galleries/images/versions/read",
    
     <!--NeedCopy-->
    
  • Se l’immagine master è un disco gestito, uno snapshot o un VHD si trova in una regione diversa da quella della connessione di hosting:

    
     "Microsoft.Storage/storageAccounts/read",
     "Microsoft.Storage/storageAccounts/listKeys/action",
     "Microsoft.Storage/storageAccounts/write",
     "Microsoft.Storage/storageAccounts/delete",
     "Microsoft.Storage/checknameavailability/read",
     "Microsoft.Storage/locations/usages/read",
     "Microsoft.Storage/skus/read",
    
     <!--NeedCopy-->
    
  • Se si utilizza il gruppo di risorse gestito da Citrix:

    
     "Microsoft.Resources/subscriptions/resourceGroups/write",
     "Microsoft.Resources/subscriptions/resourceGroups/delete",
    
     <!--NeedCopy-->
    
  • Se si inserisce l’immagine master in Azure Compute Gallery (precedentemente Shared Image Gallery) in un tenant o una sottoscrizione condivisi:

    
     "Microsoft.Compute/galleries/write",
     "Microsoft.Compute/galleries/images/write",
     "Microsoft.Compute/galleries/images/versions/write",
     "Microsoft.Compute/galleries/read",
     "Microsoft.Compute/galleries/images/read",
     "Microsoft.Compute/galleries/images/versions/read",
     "Microsoft.Compute/galleries/delete",
     "Microsoft.Compute/galleries/images/delete",
     "Microsoft.Compute/galleries/images/versions/delete",
     "Microsoft.Resources/subscriptions/read",
    
     <!--NeedCopy-->
    
  • Se si utilizza il supporto host dedicato di Azure:

    
     "Microsoft.Compute/hostGroups/read",
     "Microsoft.Compute/hostGroups/write",
     "Microsoft.Compute/hostGroups/hosts/read",
    
     <!--NeedCopy-->
    
  • Se si utilizza la crittografia lato server (SSE) con chiavi gestite dal cliente (CMK):

    
     "Microsoft.Compute/diskEncryptionSets/read",
    
     <!--NeedCopy-->
    
  • Se si distribuiscono VM utilizzando i modelli ARM (profilo macchina):

    
     "Microsoft.Resources/deployments/write",
     "Microsoft.Resources/deployments/operationstatuses/read",
     "Microsoft.Resources/deployments/read",
     "Microsoft.Resources/deployments/delete",
     "Microsoft.Insights/DataCollectionRuleAssociations/Read",
     "Microsoft.Insights/dataCollectionRules/read",
    
     <!--NeedCopy-->
    
  • Se si utilizza la specifica del modello di Azure come profilo macchina:

    
     "Microsoft.Resources/templateSpecs/read",
     "Microsoft.Resources/templateSpecs/versions/read",
    
     <!--NeedCopy-->
    

Creazione, aggiornamento ed eliminazione di macchine con disco non gestito

Di seguito è riportato l’elenco delle autorizzazioni minime richieste quando l’immagine master è VHD e si utilizza il gruppo di risorse fornito dall’amministratore:


"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Resources/tags/read",
"Microsoft.Resources/tags/write",
"Microsoft.Storage/storageAccounts/delete",
"Microsoft.Storage/storageAccounts/listKeys/action",
"Microsoft.Storage/storageAccounts/read",
"Microsoft.Storage/storageAccounts/write",
"Microsoft.Storage/checknameavailability/read",
"Microsoft.Storage/locations/usages/read",
"Microsoft.Storage/skus/read",
"Microsoft.Compute/virtualMachines/deallocate/action",
"Microsoft.Compute/virtualMachines/delete",
"Microsoft.Compute/virtualMachines/read",
"Microsoft.Compute/virtualMachines/write",
"Microsoft.Resources/deployments/validate/action",
"Microsoft.Network/networkInterfaces/delete",
"Microsoft.Network/networkInterfaces/join/action",
"Microsoft.Network/networkInterfaces/read",
"Microsoft.Network/networkInterfaces/write",
"Microsoft.Network/networkSecurityGroups/delete",
"Microsoft.Network/networkSecurityGroups/join/action",
"Microsoft.Network/networkSecurityGroups/read",
"Microsoft.Network/networkSecurityGroups/write",
"Microsoft.Network/virtualNetworks/subnets/read",
"Microsoft.Network/virtualNetworks/read",
"Microsoft.Network/virtualNetworks/subnets/join/action",
"Microsoft.Network/locations/usages/read"

<!--NeedCopy-->

Gestione dei costi

Di seguito è riportata l’autorizzazione minima richiesta per recuperare i prezzi delle VM:


"Microsoft.Consumption/pricesheets/read"

<!--NeedCopy-->

Di seguito è riportata l’autorizzazione minima richiesta per recuperare il costo delle VM:


"Microsoft.CostManagement/query/read"

<!--NeedCopy-->

Nota:

Per visualizzare la scheda Cost Insights per un catalogo di macchine Azure, è necessario disporre dell’autorizzazione Gestione costi > Gestisci > Leggi costo (impostazione predefinita per gli amministratori del cloud). Per informazioni sulla scheda Cost Insights, vedere Visualizzare i dettagli del catalogo.

Autorizzazioni generali

Il ruolo Collaboratore ha accesso completo per gestire tutte le risorse. Questo set di autorizzazioni non impedisce di ottenere nuove funzionalità.

Il seguente set di autorizzazioni offre la migliore compatibilità in futuro, sebbene includa più autorizzazioni del necessario con il set di funzionalità attuale:


"Microsoft.Compute/diskEncryptionSets/read",
"Microsoft.Compute/disks/beginGetAccess/action",
"Microsoft.Compute/disks/delete",
"Microsoft.Compute/disks/endGetAccess/action",
"Microsoft.Compute/disks/read",
"Microsoft.Compute/disks/write",
"Microsoft.Compute/galleries/delete",
"Microsoft.Compute/galleries/images/delete",
"Microsoft.Compute/galleries/images/read",
"Microsoft.Compute/galleries/images/versions/delete",
"Microsoft.Compute/galleries/images/versions/read",
"Microsoft.Compute/galleries/images/versions/write",
"Microsoft.Compute/galleries/images/write",
"Microsoft.Compute/galleries/read",
"Microsoft.Compute/galleries/write",
"Microsoft.Compute/hostGroups/hosts/read",
"Microsoft.Compute/hostGroups/read",
"Microsoft.Compute/hostGroups/write",
"Microsoft.Compute/snapshots/beginGetAccess/action",
"Microsoft.Compute/snapshots/delete",
"Microsoft.Compute/snapshots/endGetAccess/action",
"Microsoft.Compute/snapshots/read",
"Microsoft.Compute/snapshots/write",
"Microsoft.Compute/virtualMachines/deallocate/action",
"Microsoft.Compute/virtualMachines/delete",
"Microsoft.Compute/virtualMachines/read",
"Microsoft.Compute/virtualMachines/restart/action",
"Microsoft.Compute/virtualMachines/start/action",
"Microsoft.Compute/virtualMachines/write",
"Microsoft.Compute/locations/publishers/artifacttypes/types/versions/read",
"Microsoft.Compute/skus/read",
"Microsoft.Compute/virtualMachines/extensions/read",
"Microsoft.Compute/virtualMachines/extensions/write",
"Microsoft.Network/networkInterfaces/delete",
"Microsoft.Network/networkInterfaces/join/action",
"Microsoft.Network/networkInterfaces/read",
"Microsoft.Network/networkInterfaces/write",
"Microsoft.Network/networkSecurityGroups/delete",
"Microsoft.Network/networkSecurityGroups/join/action",
"Microsoft.Network/networkSecurityGroups/read",
"Microsoft.Network/networkSecurityGroups/write",
"Microsoft.Network/virtualNetworks/subnets/read",
"Microsoft.Network/virtualNetworks/read",
"Microsoft.Network/virtualNetworks/subnets/join/action",
"Microsoft.Network/locations/usages/read",
"Microsoft.Resources/deployments/operationstatuses/read",
"Microsoft.Resources/deployments/read",
"Microsoft.Resources/deployments/validate/action",
"Microsoft.Resources/deployments/write",
"Microsoft.Resources/deployments/delete",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Resources/subscriptions/resourceGroups/write",
"Microsoft.Resources/subscriptions/resourceGroups/delete",
"Microsoft.Resources/providers/read",
"Microsoft.Resources/subscriptions/locations/read",
"Microsoft.Resources/subscriptions/read",
"Microsoft.Resources/tags/read",
"Microsoft.Resources/tags/write",
"Microsoft.Resources/tenants/read",
"Microsoft.Resources/templateSpecs/read",
"Microsoft.Resources/templateSpecs/versions/read",
"Microsoft.Storage/storageAccounts/delete",
"Microsoft.Storage/storageAccounts/listKeys/action",
"Microsoft.Storage/storageAccounts/read",
"Microsoft.Storage/storageAccounts/write",
"Microsoft.Storage/checknameavailability/read",
"Microsoft.Storage/locations/usages/read",
"Microsoft.Storage/skus/read",
"Microsoft.Features/providers/features/read",
"Microsoft.Insights/DataCollectionRuleAssociations/Read",
"Microsoft.Insights/dataCollectionRules/read",
"Microsoft.Insights/diagnosticsettings/delete",
"Microsoft.Insights/diagnosticsettings/read",
"Microsoft.Insights/diagnosticsettings/write",
"Microsoft.Compute/capacityReservationGroups/capacityReservations/read",
"Microsoft.Consumption/pricesheets/read",
"Microsoft.Network/networkSecurityGroups/join/action",
"Microsoft.Network/networkSecurityGroups/read",
"Microsoft.Network/networkSecurityGroups/securityRules/read",
"Microsoft.Compute/capacityReservationGroups/deploy/action",
"Microsoft.EdgeZones/extendedZones/read"

<!--NeedCopy-->

Configurare le autorizzazioni necessarie per la connessione host di Azure

È possibile configurare facilmente tutte le autorizzazioni minime richieste per un’entità servizio o un account utente in Azure, collegato a una connessione host, per eseguire tutte le operazioni MCS utilizzando un modello ARM. Questo modello ARM automatizza quanto segue:

  • La creazione di un ruolo Azure con le autorizzazioni minime necessarie per le operazioni.
  • L’assegnazione di questo ruolo a un’entità servizio Azure esistente a livello di sottoscrizione.

È possibile distribuire questo modello ARM utilizzando il portale di Azure o i comandi PowerShell. Per ulteriori informazioni, vedere Modello ARM per le operazioni di Citrix Virtual Apps and Desktops.

Convalidare le autorizzazioni sulla connessione host

È possibile convalidare le autorizzazioni su una connessione host per eseguire attività relative alla creazione e alla gestione di cataloghi di macchine MCS. Questa implementazione consente di individuare in anticipo le autorizzazioni mancanti richieste per diversi scenari, come la creazione, l’eliminazione e l’aggiornamento di VM, la gestione dell’alimentazione delle VM, in modo da evitare blocchi in momenti critici.

È possibile convalidare le autorizzazioni su una connessione host utilizzando il comando PowerShell Test-HypHypervisorConnection. Il risultato del comando viene acquisito come un elenco in cui ogni elemento dell’elenco è suddiviso in tre sezioni.

  • Categoria: l’azione o l’attività che un utente può eseguire per creare e gestire un catalogo di macchine MCS.
  • Azione correttiva: il passaggio che un amministratore deve eseguire per risolvere una discrepanza di autorizzazioni mancanti di un utente.
  • Autorizzazione mancante: l’elenco delle autorizzazioni mancanti per una categoria.

Per convalidare le autorizzazioni, eseguire le seguenti operazioni:

  1. Creare una connessione host ad Azure.
  2. Aprire una finestra PowerShell dall’host Delivery Controller™.
  3. Eseguire asnp citrix* per caricare i moduli PowerShell specifici di Citrix.
  4. Eseguire il comando seguente per verificare se si dispone delle autorizzazioni richieste per testare una connessione.

    
    Test-HypHypervisorConnection -LiteralPath "XDHyp:\Connections\AzureCon"
    
    <!--NeedCopy-->
    

    Autorizzazione a livello di ruolo richiesta per l’SPN:

    • Microsoft.Authorization/roleDefinitions/read (a livello di sottoscrizione o a livello di gruppo di risorse se viene fornito il gruppo di risorse)
    • Microsoft.Authorization/roleAssignments/read (a livello di sottoscrizione o a livello di gruppo di risorse se viene fornito il gruppo di risorse)

    Autorizzazioni a livello di API richieste per l’SPN:

    Microsoft.Graph:

    • Application.Read.All
    • Directory.Read.All
    • ServicePrincipalEndpoint.Read.All
  5. Dopo aver aggiunto le autorizzazioni mancanti richieste per cercare le proprie autorizzazioni, eseguire il comando seguente per verificare se si dispone delle autorizzazioni nelle varie categorie.

    Esempio:

    Per testare una connessione a livello di sottoscrizione con un livello di autorizzazione superiore richiesto:

    
    Test-HypHypervisorConnection -LiteralPath XDHyp:\Connections\ AzureCon -SecurePassword $password -UserName 922e65d5-38ae-4cf5-xxxx-xxxxxxxxx
    
     <!--NeedCopy-->
    

    Esempio:

    Per testare una connessione a livello di gruppo di risorse senza un livello elevato di autorizzazione:

    
    Test-HypHypervisorConnection -LiteralPath XDHyp:\Connections\testles -CustomProperties $customProperties | Format-List
    
    <!--NeedCopy-->
    

    Nota:

    Il parametro CustomProperties viene utilizzato per fornire il livello del gruppo di risorse perché il gruppo di risorse è un’informazione specifica della connessione.

    Esempio:

    Per testare una connessione con il livello di autorizzazione superiore a livello di gruppo di risorse:

    
    Test-HypHypervisorConnection -LiteralPath XDHyp:\Connections\testles -SecurePassword $password -UserName 922e65d5-38ae-4cf5-832b-54122196b7dd -CustomProperties $customProperties
    
    <!--NeedCopy-->
    

Per informazioni sulle autorizzazioni, vedere Autorizzazioni Azure richieste.

Dove andare dopo

Ulteriori informazioni