0

私の Java EE アプリケーションは Glassfish 3.2.1 にデプロイされており、CAS サーバーに対して認証が要求されます。CAS サーバーは、認証されたユーザーが属するすべての Active Directory グループのリストをプリンシパルに返します。javax.servlet.http.HttpServletRequestWrapper の拡張 リスト内のロールを検索する getUserInRole メソッドをオーバーライドできます。正しく動作しますが、仮定は次のとおりです。

  • ADグループとロールは同一(1対1対応)
  • そのため、役割はアプリケーションによって定義されません。AD グループとして定義する必要があります。
  • そのため、AD のグループは非常に大きくなっています。

他のアプリケーションが同じ承認メカニズムを使用し、複数のロールを必要とする場合、AD グループの数が大幅に増加し、getUserInRole 関数に費やされる時間も増加するため、最後のポイントは重要です。

そのため、この承認方法が少数の役割と少数のアプリケーションでうまく機能したとしても、複数のアプリケーションがそれぞれ複数の役割を持つ場合、パフォーマンスの問題が発生する可能性があります。

質問: 次の制約でパフォーマンスの問題を克服するために使用できる別のパターンはありますか? CAS 認証、GlassFish、Java EE アプリケーション。

4

0 に答える 0