Proteggere l'hosting e il salvataggio permanente

L'archivio di salvataggio permanente è una parte fondamentale dell'architettura di Windows Server AppFabric. L'archivio supporta la durevolezza delle istanze di Windows Workflow Foundation (WF) durante i vari stati di esecuzione. È possibile modificare le istanze di servizio del flusso di lavoro permanenti utilizzando gli strumenti amministrativi di AppFabric. È necessario fornire autorizzazioni all'archivio di salvataggio permanente agli utenti di AppFabric che eseguono gli strumenti amministrativi e alle applicazioni in fase di esecuzione, per consentire le operazioni di lettura e scrittura dall'archivio dati. È inoltre necessario controllare l'accesso all'archivio di salvataggio permanente a livello di scopo di gestione e applicazione.

Un'importante considerazione di sicurezza riguarda il percorso in cui avviene l'hosting di un'applicazione. L'isolamento dell'applicazione consente di proteggere i dati in modo da impedire ad altre applicazioni di visualizzarli o accedervi. Inoltre, il controllo dell'identità dell'applicazione per l'accesso downstream delle risorse è una parte fondamentale del modello di sicurezza di AppFabric. L'identità ha effetto sull'entità di sicurezza utilizzata dall'applicazione quando tenta di accedere all'archivio di salvataggio permanente.

Le funzionalità di hosting e di salvataggio permanente rientrano nell'ambito dell'applicazione e in quello della gestione e necessitano di livelli di protezione diversi in base alle rispettive aree. L'attribuzione di autorizzazioni specifiche è dettata dalla possibilità di inclusione in vari gruppi di sicurezza. L'ambito della sicurezza dell'applicazione influenza le autorizzazioni di cui dispone un'applicazione in fase di esecuzione ed è legato al ruolo concettuale degli utenti del server applicazioni. L'ambito della sicurezza della gestione influenza gli strumenti e le operazioni correlate che un amministratore e i servizi del sistema possono eseguire. Tali autorizzazioni sono associate ai ruoli concettuali degli amministratori e degli operatori del server applicazioni.

Protezione dei dati di salvataggio permanente

Quando un'istanza di un servizio viene resa permanente, il relativo stato del sistema viene salvato nell'archivio di salvataggio permanente. Spesso le applicazioni raccolgono e trasmettono informazioni personali o altri dati riservati. Se tali dati vengono inclusi nello stato dell'applicazione quando un servizio viene reso permanente, questi vengono salvati nell'archivio di salvataggio permanente. Più server, siti e applicazioni possono condividere un unico archivio di salvataggio permanente. Normalmente, i dati di salvataggio permanente vengono aggregati in server e siti che condividono un archivio, per agevolare la gestione dello stato delle attività di migliaia di istanze di un servizio in un ambiente esteso. Ciò consente a un'istanza di un servizio di essere resa permanente durante l'esecuzione su un server di AppFabric e, se necessario, di essere ripristinata su un altro server mediante criteri di bilanciamento del carico.

Dopo aver salvato i dati nell'archivio di salvataggio permanente, questi saranno visibili ai membri del ruolo del database AS_Administrators e a tutti i membri dei ruoli sysadmin e dbo di SQL Server. Poiché i dati di salvataggio permanente sono vulnerabili a rischi involontari o mirati, è necessario prestare particolare cura nel ridurre tali rischi mediante una corretta gestione delle autorizzazioni.

È possibile proteggere i dati nell'archivio di salvataggio permanente nei modi seguenti:

  • Utilizzare diversi archivi di salvataggio permanente. È possibile creare e configurare un archivio di salvataggio permanente alternativo sullo stesso server o su un server diverso utilizzando i cmdlet di AppFabric per creare l'archivio e la pagina AppFabric Configurazione database di salvataggio permanente per configurarlo. Quindi, è possibile configurare determinate applicazioni in modo che utilizzino esclusivamente tale archivio. In questo modo, alle applicazioni specificate viene fornito un archivio di salvataggio permanente privato, a cui le altre applicazioni non possono accedere.

  • Dividere l'archivio di salvataggio permanente e quello di monitoraggio in due archivi separati. Per impostazione predefinita, la tabella e le entità per l'archivio di salvataggio permanente e per quello di monitoraggio vengono create nell'archivio DefaultApplicationServerExtensions in fase di installazione. È possibile dedicare un archivio al solo salvataggio permanente e l'altro al solo monitoraggio. Ciò consente di isolare le applicazioni e gli utenti nell'ambito della gestione e dell'applicazione dall'accesso a un archivio doppio e quindi a tutte le tabelle relative al salvataggio permanente e al monitoraggio.

  • Utilizzare i gruppi di Windows e i suoli di SQL Server. L'accesso all'archivio di salvataggio permanente di SQL Server è implementato mediante i ruoli del database di SQL Server. Durante l'inizializzazione di un archivio di istanza, l'amministratore può inserire gruppi di Windows nei ruoli Utenti archivio istanza, Lettori archivio istanza e Amministratori archivio istanza di SQL. Per ulteriori informazioni sulla protezione dei dati negli archivi di salvataggio permanente mediante i gruppi di Windows e i ruoli di SQL Server, vedere Configurazione della protezione per gli archivi di salvataggio permanente.

  • Manipolare le funzionalità di salvataggio permanente. È possibile utilizzare le estensioni aggiunte a Gestione IIS da AppFabric per abilitare e disabilitare le funzionalità di salvataggio permanente per un servizio di flusso di lavoro specifico, per tutti i servizi di flusso di lavoro in un'applicazione, per tutte le applicazioni di un sito Web o per tutti i siti Web su un server. È possibile definire un criterio di salvataggio permanente a un livello superiore e far sì che i livelli inferiori in IIS e nella gerarchia di WAS ereditino le impostazioni di tale criterio.

  • Utilizzare diverse identità del pool di applicazioni. L'utilizzo di diverse identità per i pool di applicazioni IIS, è possibile restringere o espandere le autorizzazioni di SQL Server per l'intero archivio di salvataggio permanente o per singole entità all'interno di esso. Si tratta di una tecnica di sicurezza dettagliata che è possibile eseguire a livello di IIS e SQL Server e non è direttamente supportata dagli strumenti di AppFabric.

Protezione host

È possibile utilizzare l'isolamento del processo per separare i servizi dell'ambito della gestione di AppFabric con privilegi elevati, come ad esempio Servizio di raccolta eventi e Servizio Gestione flussi di lavoro, dai processi di lavoro dell'ambito dell'applicazione con privilegi ridotti. I servizi di AppFabric vengono eseguiti all'interno dell'ambito della gestione e dispongono dell'accesso completo ai rispettivi archivi di monitoraggio e salvataggio permanente. Tutti i processi di lavoro dell'applicazione e gli utenti vengono eseguiti nell'ambito dell'applicazione, generalmente nel contesto di un pool di identità dell'applicazione.

Nell'ambito dell'applicazione, l'ulteriore isolamento dell'host offre una vista più dettagliata della sicurezza. Un'applicazione contiene uno o più servizi di .NET Framework che vengono eseguiti nello stesso processo. Per proteggere rispettivamente i servizi di .NET Framework, è possibile eseguirli nel contesto di AppDomain diversi. Un processo di .NET Framework contiene uno o più AppDomain di .NET Framework, ciascuno dei quali è un ambiente isolato in cui vengono eseguite le applicazioni. All'interno di un pool di applicazioni IIS possono esservi una o più applicazioni contemporaneamente in esecuzione se queste sono state configurate per condividere un pool di applicazioni. Pertanto, l'utilizzo di AppDomain costituisce un modo flessibile di imporre l'isolamento dell'esecuzione senza la necessità di creare il sovraccarico di un altro processo e delle relative risorse.

Se si desidera una soluzione di hosting più isolata, configurare ciascuna applicazione affinché esegua il proprio pool di applicazioni con la relativa identità. In questo modo vengono fornite identità diverse alle applicazioni quando durante l'accesso all'archivio di salvataggio permanente. IIS colloca tutte le identità nel gruppo di sicurezza di Windows IIS_IUSRS in fase di esecuzione. Dl punto di vista della sicurezza, l'esecuzione in uno spazio di processo diverso può essere considerata equivalente all'esecuzione in un dominio dell'applicazione diverso, poiché nessun'altra applicazione è in grado di accedere al codice o ai dati di una determinata applicazione. Si tenga presente che eventuali processi aggiuntivi comportano il sovraccarico di ulteriori risorse del sistema operativo e il cambio di contesto sul processore, poiché ciascun processo occupa una parte dedicata della CPU.

  2011-12-05