Как я могу получить доступ к ролям / разрешениям пользователей с помощью настраиваемого расширения безопасности SSRS и BIDS?

Я написал и развернул специальное расширение безопасности для SSRS 2008r2, и оно прекрасно работает, если не считать попытки развернуть отчеты из BIDS 2008 / Visual Studio.

Архитектура расширения безопасности обрабатывает вход через несколько полномочий, и я управляю этим, создавая пользовательский сеанс в LogonUser (), сохраняя его в базе данных и затем загружая сеанс в клиентский прокси-класс для веб-службы RS с помощью UID, переданный с помощью файла cookie из службы, затем переписывает билет проверки подлинности, чтобы он содержал UID сеанса и роли пользователя для текущего пользователя. Эти значения затем можно использовать в настраиваемом расширении авторизации для управления разрешениями пользователей на действия и объекты SSRS.

Проблема, с которой я столкнулся, заключается в том, что не работает при развертывании отчетов из BIDS. Он обращается к службе напрямую, поэтому класс прокси службы не требуется. Я попытался обработать событие после аутентификации в контексте HTTP, но, увы, файл cookie сеанса не сохраняется службой RS, поэтому я не могу получить доступ к значениям сеанса.

Так что мне не хватает? Есть ли другой метод управления ролями и разрешениями пользователей, который нигде не требует жесткого кодирования имен пользователей? Как я уже сказал, вход в систему может осуществляться с использованием нескольких полномочий, поэтому управление разрешениями с помощью одного имени пользователя невозможно (и мысль об этом заставляет меня съеживаться).

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

Любая помощь будет принята с благодарностью!

5
задан Dan 24 February 2012 в 00:39
поделиться