MVC セキュリティ
ASP.NET MVC - 安全
ASP.NET MVC を学ぶために、インターネット アプリケーションを構築します。
パート 8: セキュリティの追加。
MVC Application Security
Models フォルダー には、アプリケーション モデルを表すクラスが含まれています。
Visual Web Developer は、アプリケーション認証に使用されるモデルを含む AccountModels.cs ファイルを自動的に作成します。
AccountModelsには、LogOnModel、ChangePasswordModel、RegisterModelが含まれています:
Change Passwordモデル
public class ChangePasswordModel
{
[必須]
[DataType(DataType.Password)]
[Display(Name = "現在のパスワード")]
public string OldPassword { get; set; }
[必須]
[StringLength(100, ErrorMessage = "{0} 少なくとも {2} 文字の長さでなければなりません。", MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "新しいパスワード")]
public string NewPassword { get }
[DataType(DataType.Password)]
[Display(Name = "新しいパスワードを確認する")]
[Compare("新しいパスワード", ErrorMessage = "新しいパスワードと確認パスワードは一致しません match.")]
public string confirmPassword { get; set; }
}
{
[必須]
[DataType(DataType.Password)]
[Display(Name = "現在のパスワード")]
public string OldPassword { get; set; }
[必須]
[StringLength(100, ErrorMessage = "{0} 少なくとも {2} 文字の長さでなければなりません。", MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "新しいパスワード")]
public string NewPassword { get }
[DataType(DataType.Password)]
[Display(Name = "新しいパスワードを確認する")]
[Compare("新しいパスワード", ErrorMessage = "新しいパスワードと確認パスワードは一致しません match.")]
public string confirmPassword { get; set; }
}
ログオンモデル
public class LogOnModel
{
[必須]
[Display(Name = "User name")]
public string UserName { get; set; }
[必須]
[DataType(DataType.Password)]
[Display(Name = "パスワード")]
public string パスワード { get; }
[Display(Name = "Remember me?")]
public bool RememberMe { get; セット; }
}
{
[必須]
[Display(Name = "User name")]
public string UserName { get; set; }
[必須]
[DataType(DataType.Password)]
[Display(Name = "パスワード")]
public string パスワード { get; }
[Display(Name = "Remember me?")]
public bool RememberMe { get; セット; }
}
モデルの登録
public class RegisterModel
{
[必須]
[Display(Name = "ユーザー名")]
public string UserName { get;セット; }
[必須]
[DataType(DataType.EmailAddress)]
[Display(Name = "メールアドレス")]
パブリック文字列メール { get;セット; }
[必須]
[StringLength(100, ErrorMessage = "{0} は少なくとも {2} 文字の長さである必要があります。", MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "パスワード")]
パブリック文字列パスワード { get;セット; }
[DataType(DataType.Password)]
[Display(Name = "パスワードの確認")]
[Compare("パスワード", ErrorMessage = "パスワードと確認パスワードが一致しません。")]
パブリック文字列確認パスワード { 取得;セット; }
}
{
[必須]
[Display(Name = "ユーザー名")]
public string UserName { get;セット; }
[必須]
[DataType(DataType.EmailAddress)]
[Display(Name = "メールアドレス")]
パブリック文字列メール { get;セット; }
[必須]
[StringLength(100, ErrorMessage = "{0} は少なくとも {2} 文字の長さである必要があります。", MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "パスワード")]
パブリック文字列パスワード { get;セット; }
[DataType(DataType.Password)]
[Display(Name = "パスワードの確認")]
[Compare("パスワード", ErrorMessage = "パスワードと確認パスワードが一致しません。")]
パブリック文字列確認パスワード { 取得;セット; }
}