SSL および Build Forge コンポーネントについて

Build Forge コンポーネントはデフォルトでセットアップされ、 SSL が有効である場合には特定のポートとセキュリティー設定を使用します。

デフォルトの SSL セットアップ

デフォルトの証明書を使用している場合、SSL の有効化は比較的単純です。 このセクションに示す手順は、そのシナリオに基づいています。

しかし、一般に、各システムで同じ証明書 (秘密鍵) を使用することはお勧めできません。 1 つのシステムで秘密鍵が漏えいすると、インフラストラクチャー全体が 危険にさらされる可能性があります。物理的セキュリティーを強化することで、 漏えいの危険性は削減できます。

比較的安全なシステムでは、プロセスごとに証明書を使用します。 これは、Build Forge では以下を行うことを意味します。

  • 各エージェントに証明書を作成します。
  • 各エンジンに証明書を作成します。これは、冗長化がセットアップされている場合に該当します。 冗長化構成を参照してください。
このセットアップには、追加の証明書管理が必要です。以下のような選択肢があります。
  • CA (認証局) を使用して証明書を生成します。 こうすることで、署名者の交換数を削減できます。
  • すべてのトラストストアまたは CA ストアに、接続の確立に必要な 署名者を確保させることができます。

以下のセクションで、SSL セキュリティーを強化する Build Forge システムのインターフェースを識別します。

クライアント・インターフェース

ユーザーはクライアント・インターフェースを使用して Build Forge システムにアクセスします。

Build Forge に対する Web クライアント
Web クライアントは Apache Web サーバーを使用して Build Forge にアクセスします。 SSL が有効化され、セキュリティーが有効になった Web ブラウザーを使用する場合、 以下のインターフェースが使用されます。
  • Apache Web サーバーのポート 443
    Web クライアントは URL を使用して Build Forge にアクセスします。 SSL が有効化された場合の URL は、以下のとおりです。
    https://host/
    host は Build Forge が稼働するホストです。 Apache へのセキュア・アクセス用に、443 以外のポートをセットアップする場合、 以下のポートも指定する必要があります。
    https://host:port/

    Web クライアントは、Apache Tomcat サーバーで稼働中の認証サーブレットにリダイレクトされます。

  • Apache Tomcat アプリケーション・サーバーのポート 8443

    認証サーブレットはログイン証明書を受諾し、ユーザーを認証します。 サーブレットは資格情報を暗号化し、ネットワーク上に平文で表示されないようにします。

Apache Tomcat サーブレットが使用するリスナー・ポートの構成は、 構成ファイルを使用して管理します。このファイルは <bfinstall>/Apache/tomcat/conf/server.xml にあります。 以下のコネクター構成を探します。
<Connector port="8443" maxHttpHeaderSize="8192" algorithm="IbmX509" 
    maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
    enableLookups="false" disableUploadTimeout="true"
    acceptCount="100" scheme="https" secure="true"
    clientAuth="false" sslProtocol="SSL_TLS" 
    keystoreFile="C:¥BuildForge71.536¥keystore¥buildForgeKeyStore.p12"
    keystorePass="password" 
    keystoreType="PKCS12" 
    truststoreFile="C:¥BuildForge71.536¥keystore¥buildForgeTrustStore.p12"
    truststorePass="password" 
    truststoreType="PKCS12"/>
Build Forge に対する API プログラム・クライアント
  • Apache Tomcat アプリケーション・サーバーのポート 49150

    API クライアントは、サービス層コンポーネント、つまり Apache Tomcat アプリケーション・サーバー上で稼働しているアプリケーションを介して、Build Forge にアクセスします。 API クライアントには、有効な bfclient.conf ファイルが必要です。

    サービス層コンポーネントは、インバウンド通信に SSL 構成を使用します。 これは、Build Forge コンソールの「管理」 > 「セキュリティー」 > 「SSL」で定義します。 デフォルトでは「デフォルト JSSE インバウンド SSL」が使用されます。

内部インターフェース

Build Forge は、Web インターフェース・コンポーネント (Apache Web サーバーおよび PHP)、サービス層コンポーネント、およびエンジン・コンポーネントで構成されます。 Web インターフェース・コンポーネントおよびエンジン・コンポーネントは、 サービス層コンポーネントのクライアントです。 また、API プログラム・クライアントもサービス層コンポーネントのクライアントです。

サービス層インバウンド

Apache Tomcat アプリケーション・サーバーのポート 49150

サービス層コンポーネントは、インバウンド通信に SSL 構成を使用します。 これは、Build Forge コンソールの「管理」 > 「セキュリティー」 > 「SSL」で定義します。 デフォルトでは「デフォルト JSSE インバウンド SSL」が使用されます。

サービス層クライアント・アウトバウンド

Apache Tomcat アプリケーション・サーバーのポート 49150

Web インターフェース・コンポーネント (PHP 経由) およびエンジン・コンポーネントはいずれも、 サービス層コンポーネントに対してアウトバウンド通信専用の SSL 構成を使用します。 これは、Build Forge コンソールの「管理」 > 「セキュリティー」 > 「SSL」で定義します。 デフォルトでは「デフォルト JSSE アウトバウンド SSL」が使用されます。

SSL ハンドシェークを正常に実行できるように、クライアント・アウトバウンド構成用の SSL プロパティーと、サービス層インバウンド構成用の SSL プロパティーとの間に互換性が必要です。「管理」 > 「セキュリティー」 > 「SSL」では、「タイプ」プロパティーと「ハンドシェーク・プロトコル」プロパティーが一致していなければなりません。

各 SSL 構成には、参照鍵ストア構成があります。

  • 鍵ストア構成: プライベート証明書が入っている鍵ストアのプロパティーを定義します。
  • トラストストア構成: 信頼できる署名者が含まれる鍵ストアのプロパティーを定義します。

構成は名前で指定されます。これは「管理」 > 「セキュリティー」 > 「SSL」で定義します。 いくつかのデフォルト値が指定されています。

外部インターフェース

外部インターフェースとは、Build Forge が外部システムと通信する際に使用するインターフェースのことです。
  • Build Forge エンジンは、エージェントと通信します。
  • Build Forge サービス層コンポーネントはデータベースと通信します。
Build Forge エンジンからエージェントへの通信
このインターフェース用の SSL を有効にするには、以下の操作を行う必要があります。
  • エージェントの構成。エージェント構成ファイルに変更を加えて、エージェント・ホストに証明書を置く必要があります。
  • エージェントを使用するサーバー・リソースごとに SSL 通信を有効化。 これはコンソールの「サーバー」パネルで実行します。

エージェント通信への SSL の有効化を参照してください。

Build Forge サービス層コンポーネントからデータベースへの通信
このインターフェース用の SSL 構成は、データベースのデバイス・ドライバーで定義されます。

フィードバック