2017-03-17 12 views
-1

ユーザがMVC WebアプリケーションのページのHTML入力(テキストボックス)に機密データ(SSNなど)を入力したとしましょう。ASP .NET MVCの機密データ

データを送信する前に(フォームポスト、URLクエリ文字列などを介して)そのデータを保護する方法は何でしょうか。 ASP .NET MVCはこれを行うためのメカニズムを提供していますか?

P.S.私は、HTTPSやインフラストラクチャ/トランスポート/ etcに基づいたものではなく、MVCでそれを行う方法を知りたいです。

+1

ASP.NETはバックエンドテクノロジです。フロントエンドのWebサイトからデータを安全に転送するのに役立ちません。より良い選択肢になるHTTPSを使いたくない場合は、javascriptの暗号化のようなものを見る必要があります。 – PhillipXT

+0

MVCがなぜそうするのか分かりません。 – Rick

+0

MVCはASP.NETの単なる拡張であり、ブラウザではなくサーバー上で実行されています。 HTTPS以外に、javascriptはWebページ自体を暗号化するための唯一のオプションです。 – PhillipXT

答えて

0

WebサーバーとクライアントのWebブラウザ間に機密メッセージを安全に送信する唯一の(達成可能な) HTTPS/SSLを介して行われます。そうしないと、メッセージはMITM攻撃によって常に傍受されますが、実際にはproper HTTPS setup(およびthis post)では可能ではありません。

理論上、カスタムJS暗号化とカスタム復号化を行うことはできますが、その場合でもJSは容易に非公開になり、難読化されることがあります。カスタム暗号化、あなたはそれが始まって安全に働くことができたと仮定します。

このanswerは、HTTPS/SSLなしでWebアプリケーションを保護できない理由について詳しく説明しています。

0

MVCは、ウェブアプリケーションを開発するための標準としてマイクロソフトが設定したアーキテクチャ設計パターンです。他の多くのフレームワークでは、MVCをフレームワーク(exp。Spring MVC)でWebアプリケーションを開発するためのパターンとして使用しています。基本的にMVCはどこにでもありますが、Model、View、Controllerフォルダが表示されない場合は混乱しないでください。だから、機密情報については、クロスサイトリクエスト偽造やその他のハッキングを防止する仕組みがありますが、httpでの送信リクエストが役に立たない場合は、誰もが簡単に盗聴できる裸のリクエストを送信しています。そのため、機密データがコンピュータからサーバーに渡されている場所では常にhttpsが使用されます。あなたが機密データを気にせずに渡すことができるサーバーとの暗号化された通信を提供するフォームの投稿など、サーバーへの接続を開くたびに、それは基本的なコンセプトです。どのフレームワークを選択しても適用されます。だからあなたの答えはいいえです。 asp.net appをどのように保護できるかは次のリンクを参照してください。