サーバー構成 > サーバーインストール後のセキュリティ > Secure Sockets Layer > FIPS サポート > FIPS サポート
  
FIPS サポート
Windchill RV&S Server の SSL の実装は、FIPS 140-2 標準に準拠するように構成できます。Windchill RV&S は FIPS 140-2 に準拠するため、bc-fips-1.0.1.jar (Bouncy Castle のモジュール) を使用します。BC FIPS jar は FIPS 140-2、レベル 1 の要件を満たすように設計、実装されています。
FIPS 140-2 構成は次の接続形態でのみサポートされます。
Windchill RV&S Client - Windchill RV&S Server
Windchill RV&S Server - Windchill RV&S Server
Web ブラウザ - Windchill RV&S Server
Windchill RV&S Agent - Windchill RV&S Server
Windchill RV&S API (Java または C) - Windchill RV&S Server
サーバー証明書を作成していない場合は、Windchill RV&S ドキュメンテーションに記述されている手順に従って、証明書の作成、署名、Windchill RV&S Server PKCS12 キーストアへのインポートを行います。
<Integrity Server インストールディレクトリ>/data/tls/certificate.p12
サーバー証明書の作成に関する詳細については、署名済みのサーバー証明書の作成を参照してください。
FIPS に対応するように Windchill RV&S を設定するには、次の手順を実行します。
1. SSL でデータベースサーバーを設定し、データベースサーバーの公開キー証明書を取得します。この証明書を信頼済み証明書として <Integrity Server インストールディレクトリ>/data/tls/certificate.p12 キーストアにインポートします。
2. 次のように、<Integrity Server インストールディレクトリ>/config/properties/is.propertiesmks.dynamicPool.config プロパティに追加パラメータを設定します。
mks.dynamicPool.config=url\=jdbc\:sqlserver\://<hostname>\:<port>;databaseName\=<dbname>;
selectMethod\=cursor;encrypt=true;fips=true;trustStoreType=PKCS12;fipsProvider=BCFIPS;
trustServerCertificate=false;hostNameInCertificate=<hostnameInCert>;trustStorePassword=<password>;
trustStore=<IntegrityServerInstallDir>/data/tls/certificate.p12,driver\=mks.frame.sql.jdbc.mssql.Driver,initialCapacity\=5,maxCapacity\=100,testTable\=VersionIdentity
3. <Integrity Server インストールディレクトリ>/config/properties/is.properties:
mksis.secure.provider=bcfips
に次のプロパティを追加し、SSL 用に BC FIPS プロバイダを使用するように Windchill RV&S Server を設定します。
4. 変更を有効にするには、Windchill RV&S Server を再起動します。
5. これらのユーティリティによって BC FIPS プロバイダがインストールされるように、スタンドアロン DB ユーティリティの次の lax ファイルを変更します。
<Integrity Server インストールディレクトリ>/bin/isutil.lax
<Integrity Server インストールディレクトリ>/bin/PatchServer.lax
<Integrity Server インストールディレクトリ>/bin/collectSupportPackage.lax
6. <JRE_INSTALL_DIR>/lib/security/java.security ファイルでプロパティ security.overridePropertiesFiletrue に設定されていることを確認します。
7. プロパティ security.provider.N の最大番号を書き留めておきます。N がプロパティ番号です。プロパティ番号が NN であるとします。
8. 新しいテキストファイルを作成します。ここでは新しいテキストファイルが JavaSecurityFips.txt であり、ファイルに次のエントリが追加されるものとします。
security.provider.M=org.bouncycastle.jcajce.provider.BouncyCastleFipsProviderMNN+1 です。
9. 前述の各 lax ファイルを次のように編集します。
a. bc-fips-1.0.1.jar のパスをプロパティ lax.class.path に追加します。パスは ..\server\mks\lib\bc-fips-1.0.1.jar です。これは lax ファイルの場所を基準とする相対パスです。
b. 新しい引数 -Djava.security.properties を追加のプロパティ lax.nl.java.option に追加します。この値を JavaSecurityFips ファイルの場所に次のように設定します。
lax.nl.java.option.additional=-Djava.security.properties=<location of JavaSecurityFips.txt>
10. jar server/mks/lib/bcprov-jdk15on-1.60 を削除します。
* 
FIPS の構成では jar ファイル bc-fips-1.0.1.jar を使用する必要があります。一部のプラットフォームでは、クラスローダーの挙動により、これら 2 つの jar の間に競合が発生します。したがって、FIPS モードでは bcprov-jdk15on-1.60 jar を削除し、FIPS に準拠している jar のみが使用されるようにします。
ロールバック後の bc-fips-1.0.1.jar の削除
PatchServer ユーティリティを使用して CPS をロールバックした後、bc-fips-1.0.1.jarserver/server/mks/lib ディレクトリから自動的に削除されません。したがって、ロールバック操作後にこの jar ファイルを手動で削除する必要があります。さらに、FIPS に対応するために行った手動での設定をすべてロールバックする必要があります。