2015-01-06 4 views
0

기존 mvc3 응용 프로그램에서 OAUth를 사용하려고합니다. 아래 코드를 사용하여 사용자를 인증 할 수있었습니다.mvc에서 OAuth 구현 3. 사용자의 세부 정보를 데이터베이스에 저장하는 방법

[System.Web.Http.AllowAnonymous] 
//This action method is executed after the authentication from Facebook 
    public ActionResult ExternalLoginCallback(string returnUrl) 
    { 
if (!result.IsSuccessful) 
     { 
      return RedirectToAction("ExternalLoginFailure"); 
     } 

    //Here i'm setting the Authentication cookie 
     FormsAuthentication.SetAuthCookie(result.UserName, false); 
     if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/") 
      && !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\")) 
     { 
      return Redirect(returnUrl); 
     } 
     else 
     { 
      return RedirectToAction("Index", "Home"); 
     } 
} 

위의 코드는 정상적으로 작동합니다. 그러나 내 mvc3 응용 프로그램은 asp.net 멤버십을 사용합니다. 내 전체 응용 프로그램은 데이터베이스에서 오는 GUID ID를 사용하지만 OAuth 인증 된 사용자에 대한 데이터베이스를 유지 관리 할 수 ​​없기 때문에 guid id를 생성 할 수 있습니다. 잘못된 방향으로 가고있는 경우 수정하십시오. 이것에 대한 도움은 매우 높이 평가됩니다.

답변

0

마찬가지로 asp.net 회원을 사용하고 있습니다. 다음 내가 페이스 북, 정상 등록 된 사용자 및 구글과 같은 타사 웹 사이트를 사용하는 사용자를 구분하고 싶은 사용자

MembershipUser newUser = Membership.CreateUser(username, Password,Email); 

가져 오기 사용자 ID를

newUser.ProviderUserKey 
+0

을 등록하는 방법입니다. 그러나 둘 다 내 웹 사이트 콘텐츠에 액세스 할 수있는 동등한 권리가 있어야합니다. 위 코드를 게시하면 정상적인 방법으로 사용자가 생성됩니다. – Dathatreya

관련 문제