2017-10-28 10 views
0

구성 사용 방법 암호 문제 :Startup.cs 추가하고 내가 그 안에 다음과 같은 방법이 있습니다 내 Startup.cs 파일의 방법을 만들었습니다

`

private void createRolesandUsers() 
     { 
      ApplicationDbContext context = new ApplicationDbContext(); 

      var roleManager = new RoleManager<IdentityRole>(new RoleStore<IdentityRole>(context)); 
      var UserManager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(context)); 


      // creating first Boss Role and creating a default Boss User  
      if (!roleManager.RoleExists("Boss")) 
      { 

       // first we create Admin rool 
       var role = new Microsoft.AspNet.Identity.EntityFramework.IdentityRole(); 
       role.Name = "Boss"; 
       roleManager.Create(role); 

       //add a note to get this to rerun? 

       //Here we create a Admin super user who will maintain the website     

       var user = new ApplicationUser(); 
       user.UserName = "Boss"; 
       user.Email = "[email protected]"; 

       string userPWD = "Pa$$w0rd"; 

       var chkUser = UserManager.Create(user, userPWD); 

       //Add default User to Role Admin 
       if (chkUser.Succeeded) 
       { 
        var result1 = UserManager.AddToRole(user.Id, "Boss"); 

       } 
      } 

`

I을 그런 다음이 메소드를 Configuration에서 호출하십시오. Boss의 역할과 사용자를 만드는 데 효과적입니다. Azure 앱의 SQL 데이터베이스에 원격으로 로그인 할 때 사용자가 생성되었는지와 역할을 확인할 수 있습니다. 유감스럽게도 계정에 로그인 할 수 없으며 사용자 이름과 비밀번호를 두 번 확인하고 이메일 입력 및 비밀번호 입력에 복사하여 붙여 넣었습니다. 어떤 사람이 내 코드에서이 문제를 일으키고 그 문제를 해결하기 위해 어떤 문제가 있는지 알 수 있습니까?

미리 도움을 주셔서 감사합니다.

답변

1

기본 MVC 템플릿 UserName (방법을 제공하지 Email)을 필요로하는 SignInManager.PasswordSignInAsync을 사용하는 이메일과 비밀번호 하지만 로그인 컨트롤러를 필요로 로그인 페이지를 작성합니다. (이메일 == 아이디를 사용하여 로그인)

update dbo.AspNetUsers set UserName=Email where UserName='Boss' 

:

빠른 수정.

더 긴 수정 : 그에 따라 login.cshtml, LoginViewModel[HtmlPost]Login을 다시 작성하십시오.

+1

예. 이것이 내가 의미하는 바입니다. –