エンタープライズアプリケーションを構築するためにbreeze jsを検討しています。
ブリーズの素晴らしい点は、クライアント ブラウザーから直接クエリを実行できることです。これにより、不要なデータをロードすることなく、ユーザー入力に基づいて動的クエリを構築できます。Breeze を使用すると、遅延読み込み戦略を使用する場合に、データの移動/転送を 1/10 またはそれ以上削減するビジネス ロジックを作成できることがわかりました。このようなクエリを使用して
万歳!!!
しかし、ビジネス ロジックのセキュリティについてはどうでしょうか。たとえば、ビジネス ロジックを隠したり、隠したり、隠したりできるリポジトリを持つことができます。次に、MVC Web API コントローラーを使用して、それらのリポジトリ C# クラスを呼び出すだけです。そのため、Breeze JavaScript は WebAPI コントローラーと通信し、WebApi コントローラーは C# リポジトリと通信します。コントローラは常に非常にシンプルで読みやすいものに保たれますが、リポジトリには、アプリケーションを使用する企業向けの多くのビジネス ロジックが含まれる可能性があります。たとえば、ハッカーが Google Chrome 開発者コンソールを使用して JavaScript コードを検査すると、GetCustomers()、GetProductsForThisId(54) などの情報しか表示されません。そこで見られる (または盗まれる) 情報はあまりありません。ビジネス ロジックの 90% がサーバー上の C# リポジトリに存在するためです。
Breeze.jsはそれをどのように処理していますか?
クエリとビジネス ロジックを「コントローラーの C# から簡単な JavaScript に」移行する場合、システムがメンバーシップ ベースであることを考慮する必要があります。JavaScript でクライアントに公開するクエリが増えるほど、ソフトウェアは脆弱になり、Web サイトをハッキングして情報を盗む方法をハッカーに教えることが増えると思います。