ASP.NET MVC - 보안

ASP.NET MVC를 배우기 위해 인터넷 애플리케이션을 구축하겠습니다.

부분 8:보안 추가

MVC 애플리케이션 보안성

Models 폴더애플리케이션 모델을 나타내는 클래스를 포함하고 있습니다.

Visual Web Developer 자동 생성 AccountModels.cs 파일이 있으며, 이 파일은 애플리케이션 인증을 위한 모델을 포함하고 있습니다.

AccountModels 포함 LogOnModelChangePasswordModelRegisterModel

Change Password 모델

public class ChangePasswordModel
{
[Required]
[DataType(DataType.Password)]
[Display(Name = "Current password")]
public string OldPassword { get; set; }
[Required]
[StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", 
MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "New password")]
public string NewPassword { get; set; }
[DataType(DataType.Password)]
[Display(Name = "Confirm new password")]
[Compare("NewPassword", ErrorMessage = "The new password and confirmation password")] 
일치하지 않습니다.")]
public string ConfirmPassword { get; set; }
}

Logon 모델

public class LogOnModel
{
[Required]
[Display(Name = "User name")]
public string UserName { get; set; }
[Required]
[DataType(DataType.Password)]
[Display(Name = "Password")]
public string Password { get; set; }
[Display(Name = "Remember me?")]
public bool RememberMe { get; set; }
}

Register 모델

public class RegisterModel
{
[Required]
[Display(Name = "User name")]
public string UserName { get; set; }
[Required]
[DataType(DataType.EmailAddress)]
[Display(Name = "Email address")]
public string Email { get; set; }
[Required]
[StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", 
MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "Password")]
public string Password { get; set; }
[DataType(DataType.Password)]
[Display(Name = "Confirm password")]
[Compare("Password", ErrorMessage = "The password and confirmation password 
일치하지 않습니다.")]
public string ConfirmPassword { get; set; }
}