ASP.Net MVC 4 アプリケーションを開発しています。
私のモデルの 1 つで、Web サービスにアクセスするために必要なパスワードを保存するパスワード プロパティがあります。このプロパティに平文のパスワードを保存すると、関連付けられたビューが表示されたときに平文のパスワードが URL に表示されるようになりますが、これはセキュリティ上の理由から許可されません。
したがって、プロパティに暗号化されたパスワードを保存し、Web サービスに渡す必要がある場合にのみ復号化する必要があります。
私が直面している問題は、ユーザーがパスワードを入力できるフォームがあることです。asp.net mvc 4 テンプレート (Html.PasswordFor) の 1 つを使用しています。ユーザーが平文のパスワードを入力し、フォームがそれを受信できるようにするために、ここで使用するパスワードは平文である必要があります。
必要なのは、モデルで 2 つのプロパティを指定できるようにすることです。そのうちの 1 つは平文のパスワードで機能し、もう 1 つは暗号化されたパスワードで機能します。このフォーム フィールドでは cleartext プロパティを使用する必要がありますが、URL に cleartext パスワードを表示したくありません。
どうすればそれを防ぐことができますか?
ビューに自動的に送信しないように MVC に指示するプロパティに追加できる属性はありますか?
次のように、ビューが基づいているモデルに password というプロパティがあります。
<Required()> _
<Display(Name:="Password")> _
Public Property Password() As String
Get
Return sPassword
End Get
Set(ByVal value As String)
sPassword = value
End Set
End Property