использование ролей безопасности сервера sql в ASP.net - PullRequest
0 голосов
/ 21 марта 2011

Я создаю интранет-приложение (с asp.net c #), которое использует проверку подлинности Windows. в моем приложении будет три роли. и эти три роли будут иметь разные привилегии в SQL Server 2008, который будет связан с ним.

в SQL Server 2008, я планирую создать 3 разные роли безопасности, которые имеют разные привилегии пользователя в БД. т.е. у них будут разные права на чтение для разных таблиц в базе данных.

Мой вопрос ко всем вам: есть ли способ сопоставить роли приложений с ролями сервера sql?

Я провел некоторые исследования в этом, но информация, которую я нашел, была больше о «создании sqlserviceprovider» ... что не совсем то, что я искал.

любые предложения, рекомендации будут приветствоваться.

спасибо Адриан

Ответы [ 2 ]

1 голос
/ 21 марта 2011

Я не знаю точно, как это делается на MS SQL Server, но в целом прикладные роли безопасности для пользователей приложений не привязаны к пользователям базы данных.Обычно я вижу одного пользователя базы данных, который создается приложением для подключения, а затем все остальное, связанное с безопасностью, обрабатывается с помощью таблицы «users-permissions», которая сообщает приложению, какие разрешения имеют разные пользователи приложения.Возможно, можно сопоставить пользователей приложений непосредственно с пользователями баз данных, но однажды я услышал, что это предложило, и увидел, что оба администратора баз данных находятся в комнате ...

0 голосов
/ 21 марта 2011

То, что сказал @FrustratedWithFormsDes.

Но, если вам нужно сделать что-то подобное, вы можете взломать что-то вместе, используя роли приложений SQL Server.Это длинная и сложная тема, поэтому краткий обзор таков: вы можете использовать роль приложения (SQL) + пароль для сброса прав и привилегий текущего пользователя базы данных (т.е. сбрасывает права для входа в SQLв одной базе данных).Более поздние версии (определенно 2008) позволяют вам «выходить» из учетной записи роли приложения и повторно входить в систему как другая роль приложения.

Обратите внимание, однако, что если вы используете пул соединений, роли приложения могут действительно испортит вас.

Для получения подробной информации ознакомьтесь с ролями приложений в электронной документации (например, онлайн здесь ), и поиск "Роли приложений SQL Server" приведет кколичество статей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...