注:範囲を少し狭めるために質問を更新しました。
クライアント<->アプリケーションサーバー<->データサーバー
承認は、ユーザーが表示を許可または許可されていないテーブルおよびテーブルの列を決定します。また、ユーザーに表示を許可または禁止する列の値を指定することもできます。たとえば、ユーザーはクライアントXからの注文のみを表示するように制限されている場合があります。別のユーザーは、自分とチームメンバーの従業員データの表示を許可されている可能性がありますexcept給与情報(列)。
これはお客様のマシンにインストールされるソフトウェアスイートです。インストールは、複数のアプリケーションサーバーと複数のデータサーバーで構成される場合があります。
データサーバーは実際のユーザーの認証や承認を行わないため、次のことを確認する必要があります。
要件が満たされていることを確認するために、アプリケーションサーバーとデータサーバー間の通信を設定するための最良の方法は何ですか?
現在HTTPSを使用していますが、アプリケーションとデータサーバー間の通信の認証とセキュリティをより簡単に、より良く、より速くできる場合は、他の通信方法を利用できます。
更新:
セキュリティを重視するIT部門が不快感を抱く(別のCAを信頼する)か、インストールを非常に困難/苦痛にする(クライアント証明書)ことを回避します。しかし、プロセスの認証とプロセス間を流れるデータのセキュリティは不可欠であるため、それが唯一の方法である場合は、錠剤を飲み込むだけです。
実用的で安全なアプローチは、クライアント証明書でSSLを使用することです。これは、おそらく既存のアプローチに似ています。
これを行う1つの方法は、すべてのサーバーが秘密鍵と自己署名証明書、および通信する必要があるすべてのサーバーの証明書を持っていることです。そのため、アプリケーションサーバーがデータサーバーに接続すると、両端が証明書を提示し、もう一方の端はコピーに対してチェックします。
これは少数のサーバーに適しています。それ以上の場合は、独自の内部認証局を作成する必要があります。各サーバーには、秘密鍵、内部CAによって署名された証明書、および内部CA自体の証明書があります。
このモデルでは、サーバー間の認証には適度なサーバー負荷がありますが、SSL接続を長時間開いたままにしておくことでこれを軽減するため、認証はたまにしか行われません。