2014-10-16 2 views
0

Web Forms를 4 년 동안 사용해 본 후에 MVC를 시작했습니다. 나는 아키텍처/기본을 설명하는 비디오를 거의 보지 못했고 이제는 EF6를 사용하여 MVC5로 기존 프로젝트의 몇 가지 모듈을 복제 할 수있게되었습니다.ASP.NET MVC 5 Identity 2.0 & OWIN 기존 DB를 사용한 두 가지 요소 인증

나는 앨범/아티스트/타이틀/리뷰 및 사용자 테이블과 같은 테이블을 포함하는 SQL Server DB를 가지고 있습니다. 삽입/삭제를 포함하여 EF6를 사용하여 첫 번째 테이블 세트로 작업 할 수있었습니다. 이전 프로젝트 저는 BCrypt를 사용하여 사용자 테이블에 세부 정보를 저장하고 나중에 인증을 수행하고 인증 쿠키를 설정하여 사용자 지정 웹 폼 인증을 구현했습니다.

사용자 테이블에는 UserId, PWHash, EMail, FirstName, LastName과 같은 세부 정보가 있습니다. UserId는 리뷰 테이블의 FK이며 일부는 그렇지 않습니다.

I가 바라고 구현은 다음과 같습니다 :

1. Login screen accepts credentials and validates with existing User table. 
    2. If valid, move to the 2FA screen(eMail/SMS). 
    3. If valid, then allow access to application. 

이 자습서의 대부분은 성 FIRSTNAME /로 속성을 확장 할 수 있지만, 기존의 DB를 사용하는 방법에 대해 말을하지 않는 방법을 말한다. 민감한 세부 사항을 암호화하기 위해 bcrypt/scrypt를 사용할 계획입니다.

내가 MVC 5 & ASP.NET Identity - Implementation Confusion를 통과했지만 ID가 내 쿼리에 모든 답변이 없습니다

난 그냥 기존의 DB를 연결하는 대신 dbcontext를 사용하여 기본적으로 제공하는 방법에 대한 시작점을 필요

답변

0

를 앱이 EF 코드 먼저 당신이 기존의 스키마를 사용하여 자신의 사용자에 연결할 수 있습니다 사용하는 경우. 기존 사용자 정보를 재사용하고 ID에 플러그인하는 방법을 보여주는 다음 예제를 살펴보십시오. http://aspnet.codeplex.com/SourceControl/latest#Samples/Identity/CustomMembershipSample/Readme.txt

IdentityDbContext에서 상속하지 않아도됩니다. DbContext를 직접 사용할 수 있습니다. 이 경우 사용자/역할 테이블과 테이블 간의 모든 매핑을 만들려면 onModelCreating을 재정의해야합니다.

1

개인적으로 나는 전통적인 문서에서 벗어날 때 문서가 상당히 초조해 보이기 때문에 고통의 세계에 빠질 수 있습니다. 당신이 MVC5으로 만에 배달 된 상자 코드, 밖으로 많이 활용하려는 경우

가장 쉬운 방법은, 완전히 그러나 FormsAuthentication

을 활용, 인증 프로세스 자신을 제어 할 것 사용자 정의 데이터베이스 또는 스키마는 사용자 고유의 UserStore를 구현해야하고 아마도 UserManager 일 수 있습니다.

문제는 구현해야 할 것이 많기 때문에 즐거운 시간을 보장해야한다는 것입니다.

이 기사를 통해 Custom Storage Prodivers을 읽어 보시기 바랍니다.

행운을

+0

감사합니다. 내가 어딘가에 갇히게되면 너를 보게 될거야. – Dev

관련 문제