Configurazione della sicurezza per le applicazioni di libreria

Per configurare la sicurezza basata sui ruoli e l'autenticazione per le applicazioni di libreria, è necessario tenere presenti considerazioni speciali.

Abilitazione o disabilitazione dell'autenticazione

Uno dei fattori da considerare è se i chiamanti dell'applicazione di libreria devono essere soggetti ai controlli di sicurezza a livello di processo del processo di hosting, ovvero se abilitare o disabilitare l'autenticazione.

Ad esempio, se l'applicazione di libreria sarà ospitata da un browser, potrebbe essere necessario ricevere callback non autenticati. Per soddisfare questa esigenza, è possibile disabilitare l'autenticazione in modo che il processo di hosting non esegua controlli di sicurezza per i chiamanti dell'applicazione di libreria. Quando si disabilita l'autenticazione, l'applicazione di libreria diventa effettivamente non autenticata. Tutte le chiamate a tale applicazione avranno esito positivo. I chiamanti dell'applicazione di libreria non sono soggetti ai controlli di sicurezza del processo di hosting. Fondamentalmente, l'applicazione di libreria viene contrassegnata come "non autenticata" e i controlli di sicurezza vengono omessi per le chiamate all'applicazione di libreria.

Per informazioni su come abilitare o disabilitare l'autenticazione, vedere Abilitazione dell'autenticazione per un'applicazione di libreria.

Applicazione dei controlli dei ruoli

Un'altra decisione da prendere è se l'applicazione di libreria deve usare la sicurezza basata sui ruoli. Se viene usata la sicurezza basata sui ruoli, è necessario usare la sicurezza a livello di componente per eventuali controlli di accesso da eseguire. I ruoli assegnati all'applicazione di libreria non si riflettono nel descrittore di sicurezza del processo. L'unica autorizzazione che l'applicazione di libreria può controllare è a livello di componente. Per altre informazioni sulla sicurezza a livello di componente, vedere Limiti di sicurezza.

Per informazioni su come impostare la sicurezza a livello di componente, vedere Impostazione di un livello di sicurezza per i controlli di accesso.

Scenari di configurazione

Per comprendere meglio le implicazioni di decidere se l'applicazione di libreria deve usare la sicurezza basata sui ruoli e se l'applicazione di libreria deve essere non autenticata, considerare gli scenari seguenti:

  • L'autenticazione è abilitata e viene usata la sicurezza basata sui ruoli. In questo scenario, i controlli di sicurezza vengono eseguiti dal processo di hosting e alcuni chiamanti vengono negati l'accesso a livello di processo. Inoltre, il controllo dei ruoli viene eseguito a livello di applicazione della libreria in modo che alcuni chiamanti che lo effettuano tramite il controllo di sicurezza a livello di processo vengano negati l'accesso all'applicazione di libreria quando viene verificata l'appartenenza al ruolo. Questo è lo scenario consueto per un'applicazione di libreria COM+ che usa la sicurezza basata sui ruoli.

    La figura seguente illustra lo scenario in cui è abilitata l'autenticazione e viene usato il controllo dei ruoli.

    Diagramma che mostra l'autenticazione eseguita all'interno di un processo host.

  • L'autenticazione è abilitata e la sicurezza basata sui ruoli non viene usata. In questo scenario, i controlli di sicurezza vengono eseguiti a livello di processo, ma l'appartenenza al ruolo non viene controllata a livello di applicazione della libreria. Pertanto, a qualsiasi chiamante dell'applicazione di libreria che esegue il controllo di sicurezza a livello di processo verrà concesso l'accesso all'applicazione di libreria perché l'appartenenza al ruolo non viene controllata. Questa situazione si verifica quando viene eseguita la migrazione di un'applicazione COM che non usa la sicurezza basata su ruoli a un'applicazione di libreria COM+.

    La figura seguente illustra lo scenario in cui è abilitata l'autenticazione e il controllo dei ruoli non viene usato.

    Diagramma che mostra l'autenticazione a livello di processo per un'applicazione di libreria all'interno del processo host.

  • L'autenticazione è disabilitata e viene usata la sicurezza basata sui ruoli. In questo scenario, i controlli di sicurezza vengono eseguiti a livello di processo, ma i chiamanti all'applicazione di libreria non sono autenticati. In effetti, i chiamanti dell'applicazione di libreria sono esenti dal controllo di sicurezza a livello di processo. Poiché il controllo dei ruoli è abilitato, l'appartenenza al ruolo determina da sola chi ha accesso all'applicazione di libreria. Questo scenario potrebbe essere appropriato quando il controllo di sicurezza che verrebbe eseguito dal processo di hosting è troppo restrittivo, ma è necessario avere alcune restrizioni di accesso sull'applicazione di libreria o su interfacce o metodi specifici. Questo scenario consente di disattivare efficacemente la sicurezza dei processi e di disporre comunque di controlli di accesso a livello appropriati usando la sicurezza basata sui ruoli.

    Lo scenario in cui l'autenticazione è disabilitata e viene usato il controllo dei ruoli è illustrato nella figura seguente.

    Diagramma che mostra il controllo dell'appartenenza al ruolo in un'applicazione di libreria all'interno di un processo host.

  • L'autenticazione è disabilitata e la sicurezza basata sui ruoli non viene usata. In questo scenario, i controlli di sicurezza vengono ancora eseguiti a livello di processo, ma, come nello scenario precedente, i chiamanti dell'applicazione di libreria superano sempre questo controllo di sicurezza. Poiché anche il controllo dei ruoli è disabilitato, l'appartenenza al ruolo non viene controllata a livello di applicazione della libreria. Essenzialmente, chiunque può chiamare l'applicazione di libreria. Questo scenario deve essere scelto quando l'oggetto COM deve ricevere callback non autenticati, come potrebbe essere il caso di un controllo ActiveX ospitato da Internet Explorer e con uno snap-in di Microsoft Management Console. Naturalmente, questo oggetto COM deve essere considerato attendibile per comportarsi in modo appropriato quando si ricevono chiamate non autenticate. Ad esempio, non deve accedere a file arbitrari per conto dei chiamanti.

    Lo scenario in cui l'autenticazione è disabilitata e il controllo dei ruoli non viene usato è illustrato nella figura seguente.

    Diagramma che mostra le chiamate a un'applicazione di libreria non autenticata all'interno del processo host.

Dopo aver deciso se abilitare o disabilitare l'autenticazione per l'applicazione di libreria COM+, vedere Abilitazione dell'autenticazione per un'applicazione di libreria per una procedura dettagliata che illustra come disabilitare o abilitare l'autenticazione tramite lo strumento di amministrazione di Servizi componenti. Se l'applicazione di libreria userà la sicurezza basata sui ruoli, vedere Configurazione della sicurezza basata su ruoli.

Sicurezza delle applicazioni della libreria