Рекомендации по безопасности расширений

Каждое приложение, предназначенное для среды CLR, должно взаимодействовать с системой безопасности СРЕДЫ CLR. При запуске такого приложения он автоматически вычисляется и получает набор разрешений среды CLR. В зависимости от разрешений, получаемых приложением, оно либо продолжает работать, либо создает исключение безопасности. Локальные параметры безопасности и политики в файлах конфигурации политики безопасности для определенного сервера отчетов определяют разрешения кода, получаемые сборкой.

Прежде чем запрашивать разрешения, необходимо учитывать ресурсы и защищенные операции, которые планируется использовать код расширения, и вам также необходимо знать, какие разрешения защищают эти ресурсы и операции. Кроме того, необходимо отслеживать все ресурсы, к которым обращаются любые методы библиотеки классов, вызываемые компонентами расширения. Дополнительные сведения см. в разделе "Запрос разрешений" в руководстве разработчика .NET Framework.

Расширения, развернутые на сервере отчетов, должны выполняться как полностью доверенные, то есть расширение должно быть частью группы кода, которая предоставляет набор разрешений FullTrust . Это также означает, что расширение может иметь доступ к определенным ресурсам сервера и операциям, доступным через clR в зависимости от пользователя, прошедшего проверку подлинности для определенного отчета. Дополнительные сведения о группах кода и расширениях см. в разделе "Безопасность доступа к коду" в службах Reporting Services.

Это важно

Службы Reporting Services обеспечивают безопасность .NET Framework для всех его расширений.

Следующие условия применяются к развертыванию модулей обработки данных, доставки, отрисовки и безопасности в службах Reporting Services:

  • Только локальный администратор имеет разрешение на развертывание расширения.

  • Только пользователи с соответствующими разрешениями на чтение и запись могут изменить файлы конфигурации для расширенного компонента Служб Reporting Services.

  • Только привилегированные пользователи имеют разрешение на изменение файлов политики безопасности и включение безопасности доступа к коду для расширения.

Дополнительные сведения о безопасности доступа к коду в службах Reporting Services см. в разделе "Безопасная разработка" (Службы Reporting Services).

Дополнительные сведения о безопасности .NET Framework см. в руководстве разработчика .NET Framework.

Инициализация сборок расширения

Когда расширения сначала загружаются в память сервером отчетов, они используют учетные данные учетной записи службы, так как для некоторых сборок расширений требуются определенные разрешения для доступа к системным ресурсам, для чтения файлов конфигурации и загрузки других зависимых сборок. Однако после загрузки и инициализации сборки все последующие вызовы сборок расширений используют учетные данные учетной записи пользователя, вошедшего в систему.

См. также

Расширения служб Reporting Services
Библиотека расширений служб Reporting Services