5.3. Red Hat JBoss Enterprise Application Platform と HTTPS を含む更新された security サブシステム

ここでは、新しいセキュリティードメインが追加され、HTTPS が有効化された場合に JBoss EAP で実行しているサンプルアプリケーションをセキュアにする方法を取り上げます。アプリケーション sampleApp2.war はデプロイされ、コンテナーベースのセキュリティー、sample-domain、および HTTPS を使用するよう設定されています。

scenario3

5.3.1. セキュリティー

JBoss EAP は、アプリケーション向けの HTTPS の使用をサポートし、undertow サブシステムを使用して処理されます。HTTPS の新しいコネクターは undertow サブシステムに追加され、プロトコル、ポート、キーストアなどの希望の設定で設定されます。設定が保存されると、web アプリケーションは設定されたポート上で HTTPS トラフィックを許可できるようになります。sample-domain という新しいセキュリティードメインが追加され、認証に IdentityLoginModule を使用します。sampleApp2.war は、sample-domain を使用してユーザーを認証するように設定されます。

5.3.2. 仕組み

セキュリティードメイン sample-domain が作成され、IdentityLoginModule を使用するよう設定されています。以下のクレデンシャルがログインモジュールに設定されています。

表5.4 sample-domain ユーザー

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

Vincent

samplePass

sample

JBoss EAP は起動時にコアサービスをロードし、すべての web アプリケーションと sample-domain の HTTPS 接続を管理する undertow サブシステムおよび security サブシステムを起動します。Sampleapp2.war がロードされ、sample-domain を検索してセキュアな URL の認証および承認を提供します。sampleApp2.war には /hello.html/secure/hello.html の 2 つの HTML ファイルがあり、BASIC HTTP 認証を使用してパス /secure/* をセキュア化します。sample-domain セキュリティードメインを使用し、sample ロールを必要とします。

Vincent が /hello.html をリクエストすると、Vincent は認証なしでこのページを閲覧できます。Vincent が /secure/hello.html をリクエストすると、ユーザー名とパスワードの入力が要求されます。正常にログインした後、Vincent は /secure/hello.html を閲覧できます。その他すべてのユーザーはログインせずに /hello.html にアクセスできますが、sample-domain に存在するユーザーは Vincent のみであるため、/secure/hello.html にはアクセスできません。これは、HTTPS 上で処理されるすべてのトラフィックにも適用されます。