Использование файлов политики безопасности служб Reporting Services
Службы Reporting Services хранят сведения о политике безопасности компонентов в реестре и файлах конфигурации, которые копируются в файловую систему при установке. В этих файлах конфигурации хранится сочетание внутренней и пользовательской политики безопасности для сборок программного кода в службах Reporting Services. Три файла конфигурации соответствуют трем защищаемым компонентам служб Reporting Services: сервер отчетов и служба Windows, веб-приложение диспетчер отчетов и окно предварительного просмотра конструктора отчетов.
Примечание |
---|
Для конструктора отчетов предусмотрено два режима предварительного просмотра: вкладка предварительного просмотра и всплывающее окно предварительного просмотра, которое вызывается при запуске проекта отчета в режиме DebugLocal. Вкладка Просмотр не является защищаемым компонентом, к ней не применяются параметры политики безопасности. Окно предварительного просмотра предназначено для имитации функциональной возможности сервера отчетов и поэтому имеет файл конфигурации политики безопасности, который необходимо изменить, если используются пользовательские сборки или пользовательские модули в конструкторе отчетов. |
Файлы конфигурации политики безопасности содержат сведения класса безопасности, некоторые именованные наборы разрешений по умолчанию и группы программного кода для сборки в службах Reporting Services. Файлы конфигурации политики безопасности служб Reporting Services напоминают файл Security.config, который определяет иерархию группы кода и наборы разрешений, связанные с политиками на уровне компьютера и предприятия в .NET Framework. Расположение файла: C:\WINDOWS\Microsoft.NET\Framework\v1.2.21213\CONFIG\security.config.
Файлы политик в службах Reporting Services
В следующей таблице приводится список файлов конфигурации в службах Reporting Services, их расположение (предполагается установка по умолчанию) и соответствующие функции.
Имя файла. |
Расположение (установка по умолчанию) |
Описание |
---|---|---|
rssrvpolicy.config |
C:\Program Files\Microsoft SQL Server\MSSQL\Reporting Services\ReportServer |
Файл конфигурации политики безопасности сервера отчетов. Эти политики безопасности в первую очередь касаются выражений отчетов и пользовательских сборок после развертывания отчета на сервере отчетов. Этот файл также влияет на пользовательские данные, доставку, модули подготовки отчета и безопасности, развернутые на сервере отчетов. |
rsmgrpolicy.config |
C:\Program Files\Microsoft SQL Server\MSSQL\Reporting Services\ReportManager |
Файл конфигурации политики диспетчера отчетов. Эти политики безопасности касаются всех сборок, расширяющих функции диспетчера отчетов, например расширения подписки для пользовательских модулей доставки. |
rspreviewpolicy.config |
C:\Program Files\Microsoft SQL Server\80\Tools\ReportDesigner |
Файл конфигурации политики изолированного предварительного просмотра для конструктора отчетов. Эти политики безопасности касаются пользовательских сборок и выражений отчета, которые используются в отчете во время предварительного просмотра и разработки. Они влияют также на пользовательские модули, например модули обработки данных, развернутые в конструкторе отчетов. |
Изменение файлов конфигурации
Параметры конфигурации задаются либо как элементы XML, либо как атрибуты. Если вы знакомы с XML и файлами конфигурации, то можете использовать редактор текста или кода для настройки пользовательских параметров. Файлы конфигурации политики безопасности содержат сведения о иерархии группы программных кодов и набора разрешений, связанных с уровнем политики в службах Reporting Services. Для изменения политики безопасности в файле Security.config рекомендуется использовать вначале программу настройки .NET Framework (Mscorcfg.msc) или программу политики управления доступом для кода (Caspol.exe), чтобы изменения политики соответствовали допустимым XML-элементам конфигурации для файлов политик. Сразу после этого можно вырезать и вставлять в файл политики новые группы кодов и наборы разрешений из файла Security.config для компонентов, к которым добавляются разрешения на программный код.
Важно! |
---|
До внесения изменений необходимо создать резервные копии файлов конфигурации политик. |
При таком подходе достигается следующее. Во-первых, это дает возможность использовать визуальные средства при создании групп кодов и наборов разрешений для служб Reporting Services. Это гораздо легче, чем писать XML-элементы конфигурации с самого начала. Во-вторых, обеспечивает сохранность файлов конфигурации политики безопасности при неправильных XML-элементах и атрибутах. Дополнительные сведения о программе политики управления доступом для кода см. на следующем веб-узле Майкрософт.
Перед изменением файлов конфигурации политик следует прочитать все сведения, изложенные в этом разделе, а также относящиеся к нему темы. Изменение конфигураций политик служб Reporting Services может в значительной степени повлиять на безопасность выполнения компонентами служб Reporting Services внешних программных модулей.
Размещение элементов CodeGroup для модулей
Размещение элементов CodeGroup в файле политики безопасности имеет большое значение. Для модулей и разработанных пользовательских сборок рекомендуется размещать группы программного кода непосредственно под элементом URL-членства «$CodeGen$/*», как показано ниже:
<CodeGroup
class="UnionCodeGroup"
version="1"
PermissionSetName="FullTrust">
<IMembershipCondition
class="UrlMembershipCondition"
version="1"
Url="$CodeGen$/*"
/>
</CodeGroup>
<CodeGroup
class="UnionCodeGroup"
version="1"
PermissionSetName="FullTrust"
Name="MyCustomCodeGroup"
Description="Code group for my custom extension">
<IMembershipCondition class="UrlMembershipCondition"
version="1"
Url="C:\Program Files\Microsoft SQL Server\MSSQL\Reporting Services\ReportServer\bin\MyAssembly.dll"
/>
</CodeGroup>
Дополнительные группы программных кодов можно размещать одну за другой.