Considerazioni sulla sicurezza per le estensioniSecurity Considerations for Extensions

È necessario che ogni applicazione destinata a CLR (Common Language Runtime) interagisca con il relativo sistema di sicurezza.Every application that targets the common language runtime (CLR) must interact with the CLR security system. L'applicazione viene valutata automaticamente al momento dell'esecuzione e a tale applicazione viene concesso da CLR un set di autorizzazioni.When such an application runs, it is automatically evaluated and given a set of permissions by the CLR. A seconda delle autorizzazioni ricevute, l'applicazione può continuare a essere eseguita oppure viene generata un'eccezione di sicurezza.Depending on the permissions that the application receives, it either continues running or generates a security exception. I criteri e le impostazioni di sicurezza locali nei file di configurazione dei criteri di sicurezza per un server di report specifico definiscono le autorizzazioni per il codice ricevute da un assembly.The local security settings and policies in the security policy configuration files for a particular report server define the code permissions that an assembly receives.

Prima di richiedere le autorizzazioni, è necessario essere a conoscenza delle risorse e delle operazioni protette che verranno utilizzate dal codice dell'estensione, nonché sapere quali autorizzazioni proteggono tali risorse e operazioni.Before requesting permissions, you need to be aware of the resources and protected operations your extension code is planning to use, and you also need to know which permissions protect those resources and operations. È inoltre necessario tenere traccia di ogni risorsa alla quale accedono i vari metodi della libreria di classi chiamati dai componenti dell'estensione.In addition, you need to keep track of any resources accessed by any class library methods that are called by the extension components. Per ulteriori informazioni, vedere "Richiesta di autorizzazioni" nella Guida per gli sviluppatori di .NET Framework.NET Framework.For more information, see "Requesting Permissions" in the .NET Framework.NET Framework Developer's Guide.

Le estensioni distribuite in un server di report devono essere eseguite come completamente attendibili, vale a dire che l'estensione deve far parte di un gruppo di codice a cui sia concesso il set di autorizzazioni FullTrust.Extensions deployed to a report server must run as fully trusted, meaning that your extension needs to be part of a code group that is granted the FullTrust permission set. Questo significa inoltre che l'estensione può disporre di accesso a determinate operazioni e risorse del server disponibili tramite CLR, a seconda dell'utente autenticato per un report specifico.This also means that your extension may have access to certain server resources and operations available through the CLR depending on the user that is being authenticated for a particular report. Per altre informazioni sui gruppi di codice e sulle estensioni, vedere Sicurezza dall'accesso di codice in Reporting Services.For more information about code groups and extensions, see Code Access Security in Reporting Services.

Importante

In Reporting ServicesReporting Services viene applicata la sicurezza di .NET Framework.NET Framework per tutte le estensioni. Reporting ServicesReporting Services enforces .NET Framework.NET Framework security for all of its extensions.

Le condizioni seguenti riguardano la distribuzione delle estensioni di elaborazione dati, recapito, rendering e sicurezza in Reporting ServicesReporting Services:The following conditions apply to the deployment of data processing, delivery, rendering, and security extensions in Reporting ServicesReporting Services:

  • Solo l'amministratore locale dispone dell'autorizzazione per la distribuzione di un'estensione.Only the local administrator has permission to deploy an extension.

  • Solo gli utenti con le autorizzazioni di lettura/scrittura appropriate possono modificare i file di configurazione per il componente di Reporting ServicesReporting Services che viene esteso.Only users with the appropriate read/write permissions can change the configuration files for the Reporting ServicesReporting Services component that is being extended.

  • Solo gli utenti con privilegi dispongono dell'autorizzazione per la modifica dei file dei criteri di sicurezza e l'abilitazione della sicurezza da accesso di codice per un'estensione.Only privileged users have permission to edit the security policy files and enable code access security for an extension.

    Per altre informazioni sulla sicurezza dall'accesso di codice in Reporting ServicesReporting Services, vedere Sviluppo sicuro (Reporting Services).For more information about code access security in Reporting ServicesReporting Services, see Secure Development (Reporting Services).

    Per ulteriori informazioni sulla sicurezza in .NET Framework.NET Framework, vedere 'argomento relativo alla sicurezza di .NET Framework nella Guida per gli sviluppatori di .NET Framework.NET Framework.For more information about .NET Framework.NET Framework security, see ".NET Framework Security" in your .NET Framework.NET Framework Developer's Guide.

Inizializzazione degli assembly di estensioniInitialization of Extension Assemblies

Quando le estensioni vengono caricate per la prima volta in memoria dal server di report, utilizzano le credenziali dell'account di servizio, in quanto alcuni assembly di estensioni richiedono autorizzazioni specifiche per l'accesso alle risorse di sistema, la lettura dei file di configurazione e il caricamento di altri assembly dipendenti.When extensions are first loaded into memory by the report server, they use the service account credentials, because some extension assemblies require specific permissions to access system resources, to read configuration files, and to load other, dependent assemblies. Dopo che un assembly è stato caricato e inizializzato, tuttavia, per tutte le chiamate successive agli assembly di estensioni vengono utilizzate le credenziali dell'account utente che ha attualmente effettuato l'accesso.After an assembly has been loaded and initialized, however, all subsequent calls to extension assemblies use the credentials of the user account that is currently logged on.

Vedere ancheSee Also

Estensioni di Reporting Services Reporting Services Extensions
Libreria di estensioni di Reporting ServicesReporting Services Extension Library