0

ビジネス プロセス管理 (BPM) とドキュメント管理システム (DMS) の 2 つのアプリケーションがあります。どちらのシステムも Web サービスを公開して、他のシステムとの統合を可能にします。どちらのシステムもマスター ログインのユーザー名とパスワードを提供して、JSON API 認証を提供します。たとえば、BPM 内でプロセス (「process1」) を開始します。DMS は次の API 呼び出しを送信できます

/jw/web/json/workflow/process/start/process1?master_username=BPMadmin&master_password=982716171717&loginAS=currentusername

DMS Web サービスの呼び出しにも同じことが当てはまります。

ここに画像の説明を入力

このセキュリティ アプローチの制限は、JavaScript を使用して DMS または BPM Web サービスのいずれかを呼び出すことができず、返された JSON を javaScript を使用して消費できないことです。ユーザーであり、LoginAs パラメーターを他のユーザー名に手動で変更し、許可されていないアクションを実行できます。

だから私の質問は:-

  1. JavaScript を使用して Web サービス呼び出しを安全にすることはできますか?

  2. 2 番目の質問は、javaScript を使用して Web サービス呼び出しを安全にするために、他にどのようなセキュリティ アプローチに従うことができるでしょうか? マスターログインのユーザー名とパスワードを使用するのではなく、Web サービスのセキュリティを他のアプローチに変更できることを心に留めておいてください。

よろしくお願いします

4

1 に答える 1

0

まず第一に、JS はクライアント側であり、特別なセキュリティ/魔法/不可逆機能 (ブラウザ支援の暗号化エンジン、キー生成用のハイ グレート SPRNG など) は含まれていません。簡単に言えば、js で行うことはすべて安全ではなく、難読化することはできますが、安全ではありません。それはあなたがすでに指摘した点です。もう 1 つのアプローチは、サーバーを「プロキシ」として使用することです。JS 支援の GUI を設計していて、いくつかのドキュメント ro を表示しているとしましょう。次に、アプリ サーバー (BPM や DMS ではない) に AJAX 要求を行い、DMS に対して認証を行い、WS を呼び出すプロキシとして機能します。結果を JS に返します :) したがって、セットアップは JS (セッション)-> アプリ (ws auth)-> DMS -> アプリ (セッション)-> JS のようになります (ユーザーを認証したと仮定し、使用しますJS としてのユーザー セッション <-> サーバーの安全なチャネル。そうでない場合は、他のjs認証メカニズムを組み込む必要があるかもしれませんが、それはあなたのシステムであるため簡単です)。そして出来上がり。セキュリティ上の考慮事項は、誰もあなたのサーバーのプロキシサイトを呼び出すことを許可しないことです:)

于 2012-11-23T08:38:35.590 に答える