Членство в ASP.NET в Best Practice: пользовательские таблицы в одном хранилище данных?

Лучше ли расширять мою бизнес-базу данных таблицами модели безопасности членства ASP.NET. Или я должен иметь другое хранилище данных, где я управляю только Identities and Roles... В основном 1 или 2 базы данных?

Ответы

Ответ 1

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

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

Ответ 2

Это довольно субъективно, но если эти пользователи не будут использовать более одной базы данных, я бы сказал, держите их в одном и том же db.

Я бы использовал только отдельную базу данных для пользователей и ролей, если эти пользователи и роли были использованы в нескольких базах данных.

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

Ответ 3

Какую платформу базы данных вы используете? Если тот, который поддерживает схемы в базе данных, например. SQL Server 2008, то вы можете поместить свои таблицы членства в свою схему, для аккуратности. Вы также можете добавить внешние ключи перекрестной схемы.