5.4. Red Hat JBoss Enterprise Application Platform における web アプリケーションの SSO

ここでは、JBoss EAP で web アプリケーションがクラスター化された SSO およびクラスター化されていない SSO を使用する方法を取り上げます。EAP1EAP2EAP3、および EAP4 の 4 つの JBoss EAP インスタンスが作成されています。EAP1EAP2 はスタンドアロンサーバーとして動作し、EAP3EAP4 は 2 ノードクラスターとして動作します。sampleAppAsampleAppB の 2 つの web アプリケーションが各 JBoss EAP インスタンスにデプロイされています。

scenario4

5.4.1. セキュリティー

JBoss EAP は securityundertow、および infinispan サブシステムの組み合わせを使用し、web アプリケーションでクラスター化された SSO とクラスター化されていない SSO のサポートを提供します。security サブシステムは認証と承認を実行するためのセキュリティードメインを提供します。infinispan および undertow サブシステムは、JBoss EAP インスタンス上または JBoss EAP クラスター全体のすべての web アプリケーション間で SSO 情報をキャッシュおよび分散できるようにします。4 つの EAP インスタンスはすべてセキュリティードメイン sso-domain を持ち、IdentityLoginModule を使用するよう設定されています。sampleAppA および sampleAppB は、sso-domain セキュリティードメインを使用してパス /secure/* をセキュア化するよう設定され、アクセスするには sample ロールが必要です。以下のクレデンシャルが sso-domain ログインモジュールに設定されています。

表5.5 sso-domain ユーザー

ユーザー名パスワードロール

Jane

samplePass

sample

4 つの JBoss EAP インスタンスはすべて standalone-full-ha または full-ha プロファイルで起動するよう設定され、このシナリオで SSO を有効化するのに必要な infinispan サブシステムとその他の機能を追加します。web キャッシュコンテナーとレプリケートされた SSO キャッシュも追加され、undertow サブシステムはこれら両方を使用するよう設定されています。EAP1EAP2undertow サブシステムはクラスター化されていない SSO に対して設定され、EAP3 および EAP4 が含まれるクラスターはクラスター化された SSO を使用するよう設定されています。

アプリケーションのクラスターリングと、アプリケーションクラスターリングの比較

クラスター化された web アプリケーションとクラスター化された SSO には明らかな違いがあります。クラスター化された web アプリケーションは、そのアプリケーションをホストするための負荷を分散するためにクラスターのノード全体で分散されます。分散可能なクラスター化されたアプリケーションでは、新しいセッションと既存セッションの変更はすべてクラスターの別のメンバーへレプリケートされます。クラスター化された SSO は、アプリケーション自体がクラスター化されているかどうかに関わらず、セキュリティーコンテキストとアイデンティティー情報のレプリケーションを可能にします。これらの技術は一緒に使用することができますが、相互に排他的であり、独立して使用することもできます。