MVC 3 формы Аутентификация нескольких ролей базы данных Таблицы - PullRequest
1 голос
/ 30 марта 2012

Я собираюсь использовать одну базу данных LOGIN (аутентификацию форм Sql) для хранения информации о пользователе, информации о профиле пользователя, доступных баз данных для пользователя (включая все доступные базы данных для конкретного клиента) и настроек пользователя / предпочтения. Но мне нужно иметь отдельные таблицы ролей в отдельных базах данных, чтобы при входе пользователя в первую базу данных и выборе, к какой базе данных подключиться, роли, которым назначен пользователь, определяются базой данных, к которой они подключаются. Роли могут различаться в зависимости от базы данных и могут различаться в зависимости от базы данных. Схемы базы данных будут идентичны для каждой подключенной базы данных. Какие будут ваши предложения? Спасибо!

Ответы [ 2 ]

1 голос
/ 30 марта 2012

Самым простым способом было бы реализовать пользовательский RoleProvider, который внутренне использует ресурс SqlRoleProvider, инициализированный правильной строкой соединения для пользовательской текущей базы данных.

1 голос
/ 30 марта 2012

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

User
----
UserId
Name

UserRoles
---------
UserRolesId
UserId
AllRolesId

AllRoles
--------
AllRolesId
DatabaseName
RoleName
...