Condividi tramite


Configurare Istanza gestita sul Servizio app di Azure (anteprima)

Istanza gestita sul Servizio app di Azure (anteprima) è un'opzione di hosting con ambito piano per le app Web Windows che richiedono la personalizzazione del sistema operativo, la rete privata facoltativa e l'integrazione sicura con le risorse di Azure. Questo articolo illustra come configurare Istanza gestita nelle aree principali:

  • Identità gestita
  • Script di configurazione (installazione)
  • Supporti di archiviazione
  • Chiavi del Registro di sistema
  • Accesso RDP (Remote Desktop Protocol)

Importante

Istanza gestita è disponibile in anteprima per le app Web Windows in aree selezionate e con limitazione ai piani tariffari Pv4 e Pmv4. Altre aree saranno disponibili in seguito. Linux e i contenitori non sono supportati.

Aggiungere un'identità gestita (al piano di servizio app)

Le identità gestite a livello di piano consentono l'autenticazione per le operazioni dell'infrastruttura che si verificano a livello di piattaforma, ad esempio gli script di configurazione (installazione) che accedono ad Archiviazione di Azure durante l'avvio, gli adattatori del Registro di sistema che eseguono il pull dei segreti da Key Vault e i montaggi di archiviazione che eseguono l'autenticazione in File di Azure. Questi componenti sono risorse condivise usate da più app nel piano. Ad esempio, un'identità a livello di piano consente a Istanza gestita di eseguire l'autenticazione una sola volta per i componenti dell'infrastruttura, mentre le singole app mantengono le proprie identità per risorse specifiche dell'app, tra cui database e segreti dell'applicazione.

Le identità gestite per il piano di servizio app sono necessarie negli scenari seguenti:

  • Per accedere e recuperare in modo sicuro lo script di configurazione da Archiviazione di Azure.
  • Accedere agli insiemi di chiavi per fornire credenziali e valori per i punti di montaggio dell'archiviazione e gli adattatori delle chiavi di registro del sistema.

Per creare un'identità gestita, vedere Gestire le identità gestite assegnate dall'utente.

Per aggiungere un'identità gestita al piano di Istanza gestita:

  1. Passare a Istanza gestita nel portale di Azure.
  2. Selezionare Identità>Assegnata dall'utente.
  3. Seleziona + Aggiungi.
  4. Selezionare la sottoscrizione e l'identità gestita.
  5. Selezionare Aggiungi per aggiungere l'identità al piano.

Aggiungere script di configurazione (installazione)

Gli script di configurazione (installazione) vengono eseguiti all'avvio dell'istanza per applicare la personalizzazione permanente. Ad esempio, la registrazione COM (Component Object Model), le installazioni di programmi di installazione Microsoft/Windows (MSI), la configurazione di Internet Information Services (server IIS), le modifiche dell'elenco di controllo di accesso, l'abilitazione delle funzionalità di Windows, l'impostazione delle variabili di ambiente.

Per usare gli script di configurazione (installazione), è necessario quanto segue:

  • Un'identità gestita assegnata al piano di servizio app
  • Un account di archiviazione con un contenitore BLOB che contiene il pacchetto (ZIP) di script di configurazione (installazione).
  • Un singolo file ZIP la cui radice contiene Install.ps1 (punto di ingresso)
  • Il ruolo Storage Blob Data Reader nell'account di archiviazione, nel contenitore o nel gruppo di risorse

Per aggiungere uno script di configurazione:

  1. Passare al piano di servizio app di Istanza gestita nel portale di Azure.

  2. Selezionare Configurazione>Impostazioni generali.

  3. Nella sezione Script di configurazione configurare prima di tutto lo script.

    Impostazione Value
    Account di archiviazione Selezionare l'account di archiviazione
    Contenitore Immettere il nome del contenitore
    File ZIP Immettere il nome del file ZIP
    Value Verificare che questo valore sia corretto
  4. Selezionare Applica per salvare le modifiche.

Procedure consigliate per gli script di configurazione

  • Creare script idempotenti (controllare prima dell'installazione).
  • Sorvegliare le operazioni distruttive (evitare di modificare le directory di sistema Windows protette).
  • Suddividere in fasi le installazioni complesse per ridurre la latenza di avvio.

Esempio di struttura ZIP minima:

Install.ps1
myInstallerfileNameGoesHere.msi
config.xml

Script di configurazione di esempio:

# Install Components, for example Crystal Reports, Control Library, Database Driver
$ComponentInstaller = "myInstallerFileNameGoesHere.msi"
try {
    $Component = Join-Path $PSScriptRoot $ComponentInstaller
    Start-Process $Component -ArgumentList "/q" -Wait -ErrorAction Stop
} catch {
    Write-Error "Failed to install ${ComponentInstaller}: $_"
    exit 1
}

Configurare i montaggi di archiviazione

I montaggi di archiviazione forniscono una risorsa di archiviazione esterna permanente, ad esempio File di Azure, accessibile all'app. Usare questo approccio per il codice legacy che richiede l'accesso al file system condiviso, non per i segreti (usare Key Vault). Anche se l'archiviazione locale (temporanea) è disponibile, le modifiche permanenti richiedono montaggi di archiviazione.

Per configurare i montaggi di archiviazione, è necessario quanto segue:

  • Identità gestita (per l'accesso a Key Vault)
  • Segreto di Key Vault (origine credenziali)

Per configurare i montaggi di archiviazione:

  1. Passare a Istanza gestita nel portale di Azure.
  2. Selezionare Configurazione>Montaggi.
  3. Selezionare + Nuovo montaggio di archiviazione.

Specificare i dettagli seguenti per configurare il montaggio di archiviazione:

Impostazione Value
Nome Immettere un nome di montaggio
Tipo di archiviazione File di Azure, Personalizzato o Locale (archiviazione temporanea)
Account di archiviazione Selezionare o immettere un account di archiviazione
Condivisione file Selezionare una condivisione file
Value Selezionare un insieme di credenziali delle chiavi
Secret Selezionare il segreto dell'insieme di credenziali delle chiavi
Lettera di unità di montaggio Selezionare il percorso della lettera di unità

È possibile montare l'archiviazione esterna nell'istanza gestita. L'archiviazione montata è persistente tra riavvii e accessibile dal file system dell'app.

Configurare i montaggi di archiviazione con File di Azure

Per configurare un montaggio di archiviazione di File di Azure:

  1. Creare un account di ANDrchiviazione di Azure e una condivisione file di Azure.
  2. Archiviare le credenziali di connessione in Key Vault come segreto. Contenuto del segreto supportato: (ad esempio: DefaultEndpointsProtocol=...;AccountName=...;AccountKey=...;EndpointSuffix=core.windows.net)
  3. Aggiungere il montaggio in Istanza gestita (portale di Azure o ARM/Bicep/Terraform).

Suggerimento

Applicare le autorizzazioni a livello di condivisione tramite il controllo degli accessi in base al ruolo di Azure e le liste di controllo degli accessi in base al ruolo di condivisione per una sicurezza avanzata.

Configurare i montaggi di archiviazione con UNC personalizzato

Usare i montaggi per le condivisioni SMB ospitate altrove (locale, macchina virtuale o non Microsoft). Verificare la connettività di rete (integrazione della rete virtuale/endpoint privati/firewall).

  1. Se sono necessarie le credenziali, archiviarle in un segreto di Key Vault nel formato seguente: username=<user>,password=<password>
    • Evitare account amministratore di dominio. Usare un'identità del servizio con privilegi minimi.
  2. Aggiungere il montaggio in Istanza gestita.

Configurare le chiavi del Registro di sistema

Alcune applicazioni dipendono dai valori letti dal Registro di sistema di Windows. Con una adattatore delle chiavi del Registro di sistema è possibile creare chiavi del Registro di sistema e usare i segreti di Azure Key Vault come valore.

Per configurare le chiavi del Registro di sistema, è necessario quanto segue:

  • Identità gestita (per l'accesso a Key Vault)
  • Segreto di Key Vault (origine credenziali)

Per configurare le chiavi del Registro di sistema:

  1. Passare a Configurazione>Chiavi del Registro di sistema.

  2. Seleziona + Aggiungi.

    Impostazione Value
    Percorso Immettere il percorso del Registro di sistema
    Vault Immettere il nome di un insieme di credenziali esistente
    Secret Selezionare o immettere il segreto dell'insieme di credenziali delle chiavi
    TIPO Stringa o DWORD
  3. Selezionare Aggiungi per aggiungere la chiave del Registro di sistema.

Attenzione

Prestare attenzione quando si modificano i percorsi del Registro di sistema critici del sistema. Le modifiche non corrette possono influire sulla stabilità dell'istanza.

Configurare l'accesso RDP (Bastion)

Avvio rapido: Distribuire Automaticamente Azure Bastion consente di connettersi in modo sicuro alle istanze della macchina virtuale tramite Remote Desktop Protocol (RDP). RDP tramite Azure Bastion deve essere usato per la diagnostica temporanea (ispezione dei log, convalida rapida). Se si intende usare Bastion tramite il portale, aggiornare la risorsa di Bastion al piano tariffario Standard e selezionare Supporto client nativo e connessione basata su IP.

Per l'accesso Bastion/RDP sono necessarie le risorse seguenti:

  • L'istanza gestita deve essere integrata nella rete virtuale
  • Host Azure Bastion nella rete virtuale di destinazione
  • La porta 3389 deve essere consentita dal gruppo di sicurezza di rete della subnet Bastion al gruppo di sicurezza di rete della subnet del piano di servizio app

Per configurare Bastion:

  1. Passare a Configurazione>Bastion/RDP.
  2. Verificare che la Rete virtuale sia connessa.
  3. Selezionare Consenti Desktop remoto (tramite Bastion).

Attenzione

Non applicare programmi di installazione manuali o modifiche alla configurazione esclusivamente tramite RDP. Le modifiche vengono perse durante il riciclo o creano deriva della configurazione.

Domande frequenti

Quale sistema operativo è in esecuzione in Istanza gestita sul Servizio app di Azure?

Windows Server 2022.

È possibile abilitare altri ruoli e funzionalità di Windows?

Sì, tramite uno script di configurazione. Tuttavia, le funzionalità rimosse da una versione futura di Windows Server non saranno disponibili in Istanza gestita.

Istanza gestita sul Servizio app di Azure riceve aggiornamenti regolari della piattaforma e dello stack di applicazioni?

Sì, le istanze ricevono aggiornamenti e manutenzione di routine della piattaforma. Anche gli stack di applicazioni preinstallati vengono aggiornati regolarmente. È necessario gestire tutti i componenti installati tramite script di configurazione (installazione).

Quali linguaggi di programmazione sono installati in Istanza gestita sul Servizio app di Azure?

Microsoft .NET Framework 3.5, 4.8 e Microsoft .NET 8.0. Se sono necessari altri runtime, è possibile installarli usando uno script di configurazione. Questi non verranno gestiti dalla piattaforma e devono essere aggiornati manualmente.

Quali sono le limitazioni per gli script di configurazione (installazione)?

Gli script di configurazione (installazione) possono installare dipendenze, abilitare ruoli e funzionalità e personalizzare il sistema operativo. Tuttavia, le operazioni distruttive, ad esempio l'eliminazione di Windows\System32, non sono supportate e possono causare instabilità dell'istanza.

A quale livello di autorizzazione viene eseguito uno script di configurazione (installazione)?

Gli script di configurazione (installazione) vengono eseguiti con autorizzazioni di tipo Amministratore per consentire l'installazione e la configurazione dei componenti a livello di sistema.

Quali autorizzazioni di ruolo ha un operatore quando ci si connette a un'istanza usando Bastion?

Gli operatori che si connettono tramite Bastion hanno privilegi di Amministratore durante la sessione.

Come si possono risolvere gli errori relativi allo script di configurazione (installazione) o agli adattatori di archiviazione o del Registro di sistema?

Per risolvere i problemi, esaminare i log per gli script di configurazione (installazione). Sono disponibili in C:\InstallScripts\Script\Install.log nell'istanza (non nell'app Web). In alternativa, i log della console del Servizio app possono essere inviati a Monitoraggio di Azure e Log Analytics.

I log degli adattatori sono disponibili nella radice del computer. In alternativa, vengono registrati nei log della piattaforma del Servizio app.

Qual è la memoria indirizzabile di un'istanza del ruolo di lavoro dell'Istanza gestita sul Servizio app di Azure?

La memoria indirizzabile di un'istanza del ruolo di lavoro dell'Istanza gestita sul Servizio app di Azure varia a seconda del piano tariffario scelto. La tabella seguente elenca la memoria indirizzabile per un'istanza del ruolo di lavoro nell'Istanza gestita sul Servizio app di Azure. È importante prenderla in considerazione se si ha uno script di configurazione che installa più componenti, servizi e così via. Queste risorse influiscono sulla quantità di memoria disponibile per l'uso da parte delle app Web.

Piano tariffario Nuclei Memoria (MB)
P0v4 1 2048
P1v4 2 5952
P2v4 4 13440
P3v4 8 28672
P1Mv4 2 13440
P2Mv4 4 28672
P3Mv4 8 60160
P4Mv4 16 121088
P5Mv4 32 246016

Quale servizio di Archiviazione di Azure è necessario usare per caricare uno script di configurazione (installazione)?

Usare il servizio BLOB di Archiviazione di Azure per caricare lo script e le dipendenze necessarie.

Esiste una restrizione sulla denominazione e sul formato per lo script di configurazione (installazione)?

Sì, lo script deve essere denominato Install.ps1. È supportato solo PowerShell. Assicurarsi di caricare script di configurazione (installazione) e dipendenze come singolo file ZIP.

Esiste un limite di dimensioni per le dipendenze che è possibile caricare come parte del file ZIP?

Non viene applicato alcun limite di dimensioni. Tenere presente che le dimensioni complessive delle dipendenze influiscono sul tempo di provisioning dell'istanza.

L'aggiunta o la modifica di adattatori dei piani di Istanza gestita sul Servizio app comportano il riavvio delle istanze del piano?

Sì, l'aggiunta o la modifica di adattatori dei piani di Istanza gestita (script di configurazione/archiviazione/Registro di sistema) comportano il riavvio delle istanze sottostanti e influiscono su tutte le app Web distribuite nel piano. Tenere presente che il riavvio dell'istanza rimuove tutte le modifiche apportate tramite la sessione RDP. Usare sempre lo script di configurazione (installazione) per rendere persistente l'installazione delle dipendenze o altre modifiche di configurazione necessarie.

Il piano di Istanza gestita ha più istanze. È possibile riavviare una singola istanza?

Sì, passare a Istanza gestita e selezionare Istanze nel menu a sinistra. Selezionare quindi Riavvia accanto al nome dell'istanza.

Il piano di Istanza gestita sul Servizio app ha più applicazioni Web. È possibile riavviare una singola applicazione Web?

Sì, passare alla pagina Panoramica dell'app e selezionare Riavvia.

È possibile assegnare l'identità gestita all'applicazione Web all'interno dell'istanza gestita nel piano di servizio app?

Sì, è possibile assegnare un'identità gestita diversa a un'applicazione Web all'interno di Istanza gestita. Seguire le indicazioni per l'identità gestita

Esiste una limitazione per il numero di adattatori che è possibile creare per il piano di Istanza gestita sul Servizio app?

No, non esiste alcun limite per il numero di adattatori di archiviazione o del Registro di sistema. È possibile creare un singolo adattatore di script di configurazione (installazione) per il piano di Istanza gestita sul Servizio app. L'aumento del numero di adattatori potrebbe influire sul tempo di provisioning per Istanza gestita.