Сведения о настройке использования удостоверения ASP.NET (OWIN) в Entity Framework

Этот блог:

http://blogs.msdn.com/b/webdev/archive/2013/06/27/introduction-asp-net-identity-membership-system-for-asp-net-applications.aspx

о поставщике удостоверений ASP.NET говорится:

Контроль сохранения

По умолчанию система идентификации ASP.NET будет хранить всю информацию о пользователе в базе данных. ASP.NET Identity использует Entity Framework Code First для реализации всего своего механизма сохраняемости.

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

Но как с этим можно использовать службу таблиц Azure? Мое исследование показывает, что вы не можете использовать инфраструктуру сущностей со службой таблиц, поэтому я думаю, что вам придется полностью заменить код, использующий инфраструктуру сущностей, но я не уверен.

Связанный вопрос: я новичок в EF в целом. Как мы можем настроить способ хранения данных (даже на сервере SQL)? Я нашел два примера, которые показывают добавление дополнительных полей в пользовательскую таблицу:

http://www.asp.net/mvc/tutorials/mvc-5/create-an-aspnet-mvc-5-app-with-facebook-and-google-oauth2-and-openid-sign-on

http://www.asp.net/web-api/overview/security/external-authentication-services

Но мне не ясно, что именно происходит. Я думаю, что сначала используется код Entity Framework, но я вижу очень мало документации о том, как настроить для этого сохранение данных в EF. Например, могу ли я переименовывать объекты? Могу ли я определить, как будет называться база данных?

Спасибо...

-Бен


person BenjiFB    schedule 04.10.2013    source источник


Ответы (3)


  • Asp.Net Identity имеет реализацию хранилища по умолчанию с использованием EntityFramework.

  • В Microsoft.AspNet.Identity.Core есть список интерфейсов, которые необходимо реализовать для хранения данных там, где и как вы хотите. Эти интерфейсы предоставляют минимально необходимые элементы и методы.

  • IdentityManager — это основная точка входа, через которую вы можете передать свою собственную реализацию интерфейса магазина.

IdentityManager (Microsoft.AspNet.Identity.IIdentityStore)

Посмотрите эту настройку для фреймворка (не относящуюся к хранилищу/хранилищу, она поможет вам в дальнейшем)

Реализация подтверждения пользователя и сброса пароля с помощью одного удостоверения ASP.NET

person jd4u    schedule 04.10.2013
comment
Связанный домен мертв - person James Gray; 04.01.2021

Я ответил на аналогичный вопрос здесь с образцом реализации хранилища таблиц Azure, который можно использовать с битами RTM 1.0.0.

Магазин пользователей Azure Table Storage

person Hao Kung    schedule 19.10.2013

Это должно предоставить большинство, если не все детали, о которых спрашивает ОП: Как: использовать Azure Table Хранилище как хранилище удостоверений OAuth с веб-API 2

Похоже, К. Скотт Аллен начал серия сообщений в блоге, посвященных этим общим направлениям (MongoDB и Azure Tables).

person Jason Weber    schedule 17.01.2014