1

すべての機密データがマスクされている画面共有アプリケーションがあります。顧客が SSN などの機密データをマスクされていないフィールドに入力するシナリオがいくつかあり、それによってソリューションが直接侵害されます。

クライアント側だけでDBやその他のサーバー側の情報にアクセスせずに、SSNや機密データを入力していることを検出できる方法はありますか?

たとえば、SSN と住所フィールドを含むフォームを考えてみましょう。アドレス フィールドに誤って入力された SSN を表示しないようにするにはどうすればよいですか?

SSN
Address:888-9999-0988

編集

現在の私のアプローチは、すべてのパターンをクライアント側のプロパティ ファイルに格納することです。たとえば、私のアプリケーションの一般的なパスワードは 8 文字で、次のルールがあります。

^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@$!%*#?&])[A-Za-z\d$@$!%*#?&]‌​{8,}$

この正規表現をクライアント側に保存します。ユーザーが入力を開始したら、パスワードまたはユーザー名のどちらを入力しているかを確認します。同様に、電話番号を国 - 市外局番形式に分割でき、その正規表現も使用できます。しかし、SSN は純粋な 9 桁の乱数であるため、行き詰まっています。

DOM からフィールド名を抽出することで、カーソルの正確な位置と、ユーザーがデータを入力しているフィールド名を取得できます。また、サポートされているデータ形式のタイプを使用することで、ユーザーが必要なデータを入力しているか、それ以外のデータを入力しているかを大まかに把握できます。私が間違っている場合は修正してください

9 月: 2016 年 9 月 14 日 画面共有ソリューションをブラウザーで実行しているため、Web サイトでプラグ可能なコンポーネントとして使用されるため、ページの再構築を依頼するのは簡単ではありません。以下は、あなたの入力に基づいて最終化したアプローチです。すべてのパターンが格納された 1 つのファイル ファイルを作成します。1.与信関連の情報は全て決まったパターンがあるので問題ありません 2.パスワードにもいくつかのルールやパターンがあるので、それらも確認できます

データの露出を避けるために、watsapp が「ユーザーが入力中です」と表示するように、ユーザーがデータを入力するまで一般的なメッセージを表示します。ユーザーがタブまたは次のフィールドに移動すると、インライン パターン検証後にデータのみが表示されます。

ここに残っているのは、SSN、電話番号などのパターンを持たないフィールドを検出する方法だけです。これについても何らかの解決策があることを願っています。

よろしくハリー

4

1 に答える 1

2

要するに、できません。機密データを値と形式でどのように区別しますか? たとえば、SSN 212-73-6500 と NYC の電話番号 212-736-5000 を区別して機密情報を消去するにはどうすればよいでしょうか? 同様に、パスワードの文字を表示する前に、ユーザーがアドレス フィールドにパスワードを入力していることをどのように検出しますか?

データベースにアクセスして、入力されたデータを既知の値と照合することはできないとあなたは言います。機密データが入力される前にユーザーに何らかの差別化を指示できない限り、情報理論の下では間​​違いを検出する方法がありません。パスワードを名前やその他の英数字入力と区別することはできません。

可能性が 1 つあります。表示がクリアされるまで、すべてのデータを機密データとして扱います。各入力フィールドは、機密情報が含まれていないことを確認するまでマスクされます。

残念ながら、クライアント側から厳密にこれを行うことができるかどうかはわかりません。繰り返しになりますが、SSN のタイプミス (桁が 1 つ省略されている、または 2 桁になっている) と電話番号を区別するにはどうすればよいでしょうか? パスワードからアルファベットのアドレスをどのように見分けることができますか?

これを解決するには、要求する機密性の高い入力にいくつかの制限を課す必要があると思います。パスワードは、他のフィールドのようには見えません。紛らわしいフィールドはページ上でできる限り区切ってください...そして、これのいくつかは、情報のスムーズな入力の流れに問題があるかもしれません.


回答を編集

その通りです。一連の認識ルールを設定して、さまざまなタイプの入力を区別できます。ただし、上記の電話またはSSNのあいまいさ、または名前またはアドレスからパスワードを伝えるなど、手遅れになるまでいくつかのタイプの入力を区別できないという点で、いくつかの生得的な問題がまだ残っています (一部のアドレスは純粋なアルファベット文字で始まります) )。

厳しいパーティショニングでセキュリティ要件を満たすことができますか? たとえば、すべての機密情報を 1 つのページに配置し、表示されるすべての情報を別のページに配置します。特定の情報が機密であることをユーザーに強制的に知らせる方法を探しています。

また、これを国際的に使用するために設定する必要がありますか? セキュリティ要件は、文化や国によって異なります。このアプリケーションを設計するときは、このことを念頭に置いてください。

于 2016-09-13T00:03:50.550 に答える