A.1. SGD Gateway のアーキテクチャー

このセクションでは、SGD Gateway のアーキテクチャーを示し、SGD Gateway を介して SGD にアクセスするときに確立される接続について説明します。

図A.1「SGD Gateway のアーキテクチャー」 に、SGD Gateway のアーキテクチャーを示します。

図A.1 SGD Gateway のアーキテクチャー

SGD Gateway のアーキテクチャーを示すネットワーク図

次の手順では、SGD Gateway を介して SGD にアクセスするときに確立される接続について説明します。この手順では、ブラウザを使用した SGD への初期接続、SGD へのログオン、さらにアプリケーションの起動までが示されています。

  1. クライアントデバイスのブラウザが SGD Gateway に対して TCP ポート 443 で HTTPS (HTTP over Secure Sockets Layer) 接続を行います。

    • 基本的な配備の場合、ユーザーは SGD Gateway の URL にアクセスすることによって SGD にアクセスできます。

    • TCP ポート 443 は SGD Gateway のデフォルトポートです。SGD Gateway が使用するポートは、ルーティングプロキシ構成ファイル gateway.xml で定義されます。このファイルは、SGD Gateway のインストール時に自動的に作成され、gateway config コマンドを使用して SGD Gateway の構成を変更したときに更新されます。

    • SGD Gateway は SSL 証明書を提示します。この証明書は、SGD Gateway の keystore.client キーストアにある唯一のエントリです。

    • SGD Gateway が使用するキーストアの場所とパスワードは、ルーティングプロキシ構成ファイル gateway.xml で定義されます。

  2. ルーティングプロキシは HTTPS 接続を認識し、データストリームを復号化し、HTTP データを Apache 逆プロキシに転送します。

    • HTTP データは、TCP ポート 8080 より上の最初の空きポートに内部で送信されます。

    • Apache 逆プロキシの構成は httpd.conf ファイルで定義されます。このファイルとそれに関連する逆プロキシ構成ファイルは、SGD Gateway のインストール時に自動的に作成されます。これらのファイルは、gateway config コマンドを使用して SGD Gateway の構成を変更したときに更新されます。

  3. 逆プロキシは HTTP 負荷分散を使用して、アレイ内の SGD Web サーバーを選択します。

    • 逆プロキシと SGD Web サーバーの間の接続は、TCP ポート 443 で HTTPS を使用してセキュリティー保護されます。

    • Apache 逆プロキシはブラウザに負荷分散 Cookie を設定します。これ以降、ブラウザによるすべての HTTP リクエストで同じ SGD Web サーバーが使用されます。

  4. SGD Web サーバーはクライアントデバイスのブラウザに HTML を配信します。

    • HTML は、SGD Gateway の TCP ポート 443 に確立された接続上で、HTTPS データとして送信されます。

    • SGD Gateway は HTTPS データをブラウザに転送します。

  5. ユーザーが SGD にログインします。

    • SGD サーバーはユーザーを認証し、ユーザーセッションを管理する SGD サーバーを選択し、新しいユーザーセッションを開始します。

    • クライアントデバイスに SGD Client がダウンロードおよびインストールされ、起動されます。

    • ブラウザに送信された HTML にルーティングトークンが含まれています。ルーティングトークンには、ユーザーセッションを管理するように選択された SGD サーバーのアドレスが含まれています。この情報は、AIP (Adaptive Internet Protocol) データを正しい SGD サーバーにルーティングするために使用されます。

    • ルーティングトークンは、SGD サーバーの非公開鍵を使用して署名されたあと、SGD サーバーにある SGD Gateway の証明書を使用して暗号化されます。

    • ルーティングトークンは SGD Client に渡されます。

    • クライアントデバイスへの接続では HTTPS が使用されます。

  6. SGD Client は SGD Gateway に TCP ポート 443 で接続します。

    • SGD Client と SGD Gateway の間のデータ接続では、AIP over Secure Sockets Layer (SSL) が使用されます。

    • SGD Gateway の SSL 証明書が接続のために提示されます。

    • ルーティングプロキシは AIP over SSL 着信データを認識します。

    • SSL データストリームが復号化され、AIP データストリームからルーティングトークンが抽出されます。

    • ルーティングトークンは、SGD Gateway の非公開鍵を使用して復号化されたあと、SGD サーバーの CA 証明書を使用して確認されます。

    • SGD Gateway の非公開鍵と SGD サーバーの CA 証明書は、SGD Gateway キーストア keystore に保存されています。

    • ルーティングトークンが有効であることを確認するために、ルーティングトークンのタイムスタンプが検査されます。

    • SSL を使用して AIP データストリームが再度暗号化されます。

  7. AIP over SSL データはルーティングプロキシを介して、ルーティングトークンで指定されている SGD サーバーに転送されます。

    • AIP over SSL データ接続では TCP ポート 5307 が使用されます。

    • AIP データストリームにはルーティングトークンは含まれていません。

  8. ユーザーが SGD Webtop でアプリケーションを起動します。

    • アプリケーションの起動リクエストは HTTPS を使用して SGD Gateway に送信されます。

    • ルーティングプロキシは HTTPS データを認識して復号化し、HTTP トラフィックを Apache 逆プロキシに転送します。

    • 逆プロキシは負荷分散 Cookie を検出し、Cookie で指定されている SGD Web サーバーを使用します。

    • SGD アプリケーションセッションの負荷分散では、アプリケーションセッションを管理するために同じ SGD サーバーが選択されます。

    • SGD サーバー上で新しいルーティングトークンが作成されます。ルーティングトークンは、アプリケーションセッションを管理するように選択された SGD サーバーに AIP データをルーティングするために使用されます。

    • SGD サーバーはルーティングトークンを SGD Client に送信します。既存の AIP データストリームにはルーティングトークンが含まれています。

  9. SGD Client は SGD Gateway に TCP ポート 443 で接続します。

    • SGD Gateway の SSL 証明書が接続のために提示されます。

    • ルーティングプロキシは AIP over SSL 着信データを認識します。

    • ルーティングトークンの復号化、確認、および検証が行われます。

    • AIP over SSL データはルーティングプロキシを介して、ルーティングトークンで指定されている SGD サーバーに転送されます。

    • AIP データストリームにはルーティングトークンは含まれていません。

  10. SGD サーバーはアプリケーションセッションを管理します。

    • アプリケーションは、ローカルエリアネットワーク (LAN) に配置されたアプリケーションサーバー上で実行されます。