5

Doğru, bu yüzden sanırım kafam karıştı!ASP.NET Kimlik 2 - 3

ASP.NET Identity 2.1 kullanılarak çalışan birkaç ASP.NET MVC 5 sitem var ve her şey harika. Yeni bir MVC 6 sitesi oluşturuyorum ve kullanıcıların diğer sistemler için kullandıkları mevcut kimlik bilgilerini kullanmasını istiyorum. Zaten aşağıda denedi: 3 ASP.NET Kimlik 2 veritabanını Geçiş

  1. MVC alma çalıştı (tablo zaten var gibi, ben açıkçası kullanıcıyı taşıyabilir düşündüm olamaz diyor) 6 sadece dokümantasyon yeni sürümünde büyük olmadığından seçeneklerim neler merak ediyorum ASP.NET Kimlik 2.1 ile çalışmak ve sefil

başarısız, ben DB DDL değişiklik olmadığını olsun ama ben umduğum gibi, MVC 5 web sitelerinin, .NET Identity 3 veri tabanının 2.1 ile geriye dönük olarak uyumlu olduğu gibi devam etmesinin bir yolu olacaktır.

Diğer seçeneğim, MVC 5 uygulamalarını Identity 3'ü kullanacak şekilde yükseltmektir; bu da, bunları gerçekten kaynaklara sahip olmadığım veya tamamen yeni bir kimliğe sahip olduğum MVC 6'ya güncellemek anlamına gelir. veritabanı (en az yayılma seçeneği gibi görünüyor).

Herhangi bir fikir yardımcı olacaktır, şüphesiz hiç kimse kurulumla ilgili başka soruların olması durumunda boşlukları doldurmak için çok mutlu olduğum bazı ayrıntıları kaçırdım.

+0

hiç kimse yok mu? :( – MrKobayashi

cevap

2

Ben de aynı şeyi, çaba onun iyi bir anlaşma yaptığını - ve db taşıma işlemini zorunda, ama ilk

yeniASP Kimlik V3 Tablolar olacak & Göç

The ASP Identity V3 Tables & Migration

yeniASP Kimlik V3 Alanlar

Startup.cs yılında tabloları ve değişim services.AddIdentity

services.AddIdentity<ApplicationUser, IdentityRole<int>>() 
    .AddEntityFrameworkStores<ApplicationDbContext, int>() 
    .AddDefaultTokenProviders(); 
ApplicationContext.cs yılında

ve aşağıdaki imzaya sınıfını değiştirmek Yapılandırılması

The fields inside the users table, you can extend this, see below

.

ApplicationUser.cs içinde ve sınıfı aşağıdaki imzaya değiştirin.

`public class ApplicationUser : IdentityUser<int> {...}` 
  • ben daha kolay (göçler hariç) göçler klasöründeki her şeyi silmeye bulunan tüm değişiklikleri göz önüne alındığında. Projenin dizinine komut satırına gidin ve dotnet ef migrations add MyDatabaseHere -o Data\Migrations gibi bir geçiş ekleyin/ekleyin. (-o Seçeneği, hedef klasörü belirtir ve kök klasörü değil) Taşıma ile ilgili tüm sorunlar için
  • Veritabanını bırakıp tekrar dağıtacağım.
  • yoksa ben denemedim this ile otomatik hale getirebilirsiniz bu

Ben EF'den iki göç komut var neden ... ama github dan fazla referanslar için emin değildi 1 & 2

2

bağlantılar IdentityServer3'ü uygulayın, mevcut ASP.Net Identity EF DB'nize doğrudan bağlanabilirsiniz. Daha sonra diğer siteleri oAuth istemcileri olarak kullanın, MVC 5 ve/veya MVC 6 olması önemli değil çünkü tüm yapacakları, IdentityServer3 siteniz arasında ileri ve geri güvenli geçişler geçirmektir.