2015-06-08 4 views
0

Я ищу для обновления безопасности SSRS в отчетах. Меня попросили привести в порядок отчеты. Есть ли запрос, который может сделать это для меня на сервере sql?Обновление безопасности SSRS для отчетов

+2

«Приведение в порядок запросов» является неопределенным требованием. добавьте некоторые технические подробности о том, в чем цель. что вы подразумеваете под «обновлением безопасности SSRS для отчетов»? – Paolo

+0

Извините, если я не смущаюсь. У меня нет опыта, поэтому я иногда бываю неопределенным. Хорошо, поэтому на работе у нас есть база данных под названием Alpha и в ней есть защищенные отчеты. Меня попросили создать новую папку безопасности и удалить старую безопасность для каждого отчета. Чтобы все отчеты могли получить безопасность из новой папки безопасности. Теперь я могу сделать это вручную или сделать это на сервере sql. – Dan

+0

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

ответ

0

Вот как обновить параметры безопасности:

С запросом

Примечание: Это не поддерживается

Во-первых, вы должны понимать следующие понятия:

  • таблица содержит элементы служб Reporting Services (отчеты, папки, ...)
  • информационной безопасности (так называемый Policy), находится в PolicyID столбце таблицы Catalog
  • Права пользователя называются Roles и сохраняются в Role стола
  • пользователи расположены в ... ждать его ... Users стола
  • таблица PolicyUserRole связывает User, а Role и Policy

И последнее, но не менее важное: по умолчанию элемент наследует параметры безопасности из родительской папки. Если вы измените его, будет создан новый Policy.

То, что вы хотите сделать, это найти настройки GUID безопасности, который вы хотите использовать:

SELECT * FROM [Catalog] WHERE [Path] = '/NewFolder' 

Затем применить его ко всем элементам вам нужно. Вот пример для детей пунктов:

UPDATE [Catalog] SET [PolicyID] = '<NewFolderPolicyID>' WHERE [Path] LIKE '/NewFolder/%' 

вручную

Примечание: применяется следующее, если у вас нет много пунктов, или если у вас есть много времени для проводить.

Измените параметры безопасности родительских папок. Как указано выше, все элементы в папке, где наследование не было нарушено, автоматически будут использовать родительские настройки.

Затем просмотрите отчеты и выберите «Восстановить родительскую безопасность» в параметрах безопасности для отчетов, имеющих параметры, отличные от родительского отчета.

Смежные вопросы