2012-07-31 2 views
4

Вот мой сценарий: У меня есть SSRS 2008 R2, работающий в интегрированном режиме с SharePoint 2010. Все работает так, как ожидается, что я могу создавать источники данных, модели (либо через студию, либо через опцию «сгенерировать модель» на ECB для источника данных в библиотеке отчетов). Мой источник данных использует выделенную учетную запись SQL с параметром сохраненных учетных данных. Моя модель специально скрывает несколько столбцов, так что пользователи моего отчета builder 3.0 не имеют к ним доступа (рассмотрим эти чувствительные столбцы).SSRS в интегрированном режиме SharePoint и безопасности модели отчетов - дыра в безопасности?

Что я обнаружил, так это то, что , когда пользователь не может редактировать мою модель или источник данных (они имеют доступ только к чтению), они могут (из другой библиотеки отчетов, в которой они предоставляют разрешения) создают новой модели отчета (от SharEPoint) и просто мимо url к источнику данных отчета, который я устанавливаю для них в своей библиотеке. Как только они это сделают, они заканчиваются моделью, у которой нет скрытых столбцов, которые я устанавливаю в заблокированной модели. Эта модель также не имеет ни одного из параметров безопасности элемента модели, которые я применил - это совершенно новая модель, использующая только источник данных.

Итак, вот мой вопрос: Microsoft подразумевает, что безопасность элемента модели отчета может использоваться для предотвращения доступа пользователей к определенным объектам модели (отсюда и термин «безопасность элемента модели отчета»). Но если пользователи могут просто создать свою собственную модель с использованием пользовательского интерфейса SharePoint из библиотеки отчетов своего собственного создания и указать на источник данных (файл .rsds), к которому у них должен быть доступ на чтение, не является ли это чем-то вроде безопасности недостаток?

+3

Вы предоставили пользователю доступ для чтения непосредственно в базе данных. Они могут просто импортировать всю базу данных в Excel. Где ошибка безопасности? Вы прямо дали им право сделать это. –

ответ

1

«Мой источник данных использует специальный SQL счет» [...] «источник данных (они только доступ на чтение к ним». Пользователь имеет доступ на чтение к источнику данных. Это означает, что пользователь может делать все, что захочет, с данными, предоставленными этим источником данных - независимо от того, какие модели вы настроили.

Нет недостатка в безопасности, но это недостаток в вашем дизайне. Когда вы используете специальную учетную запись для доступа к внешней базе данных, у вас есть только безопасность этой учетной записи. Вам нужно будет использовать олицетворение для передачи учетных данных пользователей в базу данных, чтобы ему было разрешено видеть, что он должен видеть. Это, конечно, откроет еще одну банку червей так как вы не хотите, чтобы все пользователи SharePoint были пользователями базы данных. Это оставляет вам только третий вариант: предоставить базе данных возможность искать пользователей в какой-то базе данных поиска безопасности, это, конечно же, было бы обычным решением.

Теперь вы используете подход «безопасность по неизвестности». Вы даете пользователям одну модель с определенными «разрешениями» или скрытыми столбцами, но базовый источник данных дает пользователям все данные (даже скрытые материалы). Что мешает пользователю использовать источник данных, для которого они имеют доступ на чтение? Ничего ...

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