AdminTask オブジェクトの FIPSCommands コマンド・グループ

Jython または Jacl スクリプト言語を使用すると、wsadmin ツールによる連邦情報処理標準 (FIPS) の構成を行うことができます。

AdminTask オブジェクトの FIPSCommands コマンド・グループには、以下のコマンドが含まれます。
注:
  • IBM SDK 8のFIPS 140-2認証が失効し、NISTセキュリティ基準に準拠しなくなりました。
  • [Linux][AIX][Windows]コンプライアンスを維持し、最新のセキュリティ要件を遵守するには、FIPS 140-3を有効にしてください。
  • FIPS 140-2 認証の詳細については、 IBM JCE FIPS 140-2 Cryptographic Module Security Policy を参照

enableFips

enableFips コマンドは、指定されたセキュリティー・レベルを使用可能または使用不可にします。

ターゲット・オブジェクト

なし。

必要なパラメーター

-enableFips
このフラグが true に設定されると、FIPS が他のパラメーターによって指定されたセキュリティー・レベルで使用可能になります。 このフラグが false に設定されると、FIPS が使用不可になり、他のパラメーターは無視されます。 このパラメーターの値は、com.ibm.security.useFIPS セキュリティー・カスタム・プロパティーに設定されます。 (ブール、必須)

オプション・パラメーター

-fipsLevel
使用するセキュリティー標準のレベルを 指定します。 (ストリング、オプション)。 デフォルト値はありません。 有効な値には、次のものが含まれます。
[Linux][AIX][Windows][ 8.5.5.28 またはそれ以降]FIPS140-3
[Linux][AIX][Windows][ 8.5.5.28 またはそれ以降]この値が設定されている場合、システムはFIPS 140-3モードに準拠するように構成される。
FIPS140-2
この値を設定した場合、システムは、Fips 140-2 モードに準拠するように構成されます。
遷移
この値を設定した場合、システムは、SP800-131 transition モードに準拠するように構成されます。
SP800-131
この値を設定した場合、システムは、SP800-131 strict モードに準拠するように構成されます。

指定する値は、com.ibm.websphere.security.FIPSLevel セキュリティー・カスタム・プロパティーで設定します。

fipsLevel か suiteBLevel のいずれかを指定する必要があります。

-suiteBLevel
suiteBLevel のレベルを指定します。 デフォルト値はありません。 指定する値は、com.ibm.websphere.security.suiteb セキュリティー・カスタム・プロパティーで設定します。 (ストリング、オプション)
有効な値は以下のとおりです。
  • 128 – この値を設定した場合、システムは、スイート B 128 に準拠するように構成されます。
  • 192 – この値を設定した場合、システムは、スイート B 192 に準拠するように構成されます。
-protocol
Secure Sockets Layer (SSL) 構成のプロトコルを設定します。 このパラメータは、 -fipsLevelフラグはtransition。 他のためにfipsLevels, SSL プロトコルは仕様によってすでに定義されています。 遷移の有効な値は、 TLSTLSv1.1TLSv1.2、および TLSv1.3です。 管理コンソールでは、有効な値として TLS および TLSv1.2 のみが表示されることに注意してください。 TLS1.1 は、コマンド行で指定できます。 (ストリング、オプション)

戻り値は以下のとおりです。

True (成功) または false (失敗)。 false の場合、障害の理由が System.Out.log に記録されます。

  • Jacl ストリングを使用:
    $AdminTask enableFips {-enableFips true -fipsLevel transition }
    true

getFipsInfo

getFipsInfo コマンドは、FIPS 設定のある attributeList を戻します。 この設定は fipsEnabled、fipsLevel、および suiteBLevel です。

ターゲット・オブジェクト

なし。

必要なパラメーター

なし。

戻り値:

getFipsInfo コマンドは、FIPS 設定のある attributeList を戻します。 例えば、FIPS が使用不可である場合、fipsLevel および suiteBLevel は空ストリングとなります。 例:
表 1. セキュリティー・モードと FIPS レベル
セキュリティー・モード getFipsInfo からの戻り値
FIPS が有効になっていない
fipsEnabled=false
fipsLevel=(empty弦)
suiteBLevel=(empty弦)

[Linux][AIX][Windows][ 8.5.5.28 またはそれ以降]FIPS140-3

fipsEnabled=true
fipsLevel=FIPS140-3
文字列) suiteBLevel=(empty
FIPS140-2
fipsEnabled=true
fipsLevel=FIPS140-2
文字列) suiteBLevel=(empty
SP800-131 - Transition
fipsEnabled=true
fipsLevel=transition
suiteBLevel=(empty弦)
SP800-131 - Strict
fipsEnabled=true
fipsLevel=SP800-131
suiteBLevel=(empty弦)
Suite B 128
fipsEnabled=true
fipsLevel=(empty弦)
suiteBLevel=128
Suite B 192
fipsEnabled=true
fipsLevel=(empty弦)
suiteBLevel=192

  • Jacl を使用:
    $AdminTask getFipsInfo
    {fipsEnabled true} {fipsLevel SP800-131} {suiteBLevel {}}

listCertStatusForSecurityStandard

listCertStatusForSecurityStandard コマンドは、SSL 構成およびプラグインによって使用されたすべての証明書と、それらが要求されたセキュリティー・レベルに準拠しているかどうかの状態を戻します。

ターゲット・オブジェクト

なし。

必要なパラメーター

なし。

オプション・パラメーター

-suiteBLevel
FIPS を使用可能または使用不可にします。 デフォルト値はありません。 このフラグが true に設定されると、com.ibm.security.useFips セキュリティー・カスタム・プロパティーが true に設定されます。 このフラグが false に設定されると、com.ibm.security.useFips セキュリティー・カスタム・プロパティーが false に設定され、他のフラグは無視されます。 (ストリング、オプション)
-fipsLevel
使用するセキュリティー標準のレベルを 指定します。 (ストリング、オプション)。 デフォルト値はありません。 有効な値には、次のものが含まれます。
[Linux][AIX][Windows][ 8.5.5.28 またはそれ以降]FIPS140-3
[Linux][AIX][Windows][ 8.5.5.28 またはそれ以降]この値が設定されている場合、システムはFIPS 140-3モードに準拠するように構成される。
FIPS140-2
この値を設定した場合、システムは、Fips 140-2 モードに準拠するように構成されます。
遷移
この値を設定した場合、システムは、SP800-131 transition モードに準拠するように構成されます。
SP800-131
この値を設定した場合、システムは、SP800-131 strict モードに準拠するように構成されます。

指定する値は、com.ibm.websphere.security.FIPSLevel セキュリティー・カスタム・プロパティーで設定します。

fipsLevel か suiteBLevel のいずれかを指定する必要があります。

-suiteBLevel
suiteBLevel のレベルを指定します。 デフォルト値はありません。 指定する値は、com.ibm.websphere.security.suiteb セキュリティー・カスタム・プロパティーで設定します。 (ストリング、オプション)
有効な値は以下のとおりです。
  • 128 – この値を設定した場合、システムは、スイート B 128 に準拠するように構成されます。
  • 192 – この値を設定した場合、システムは、スイート B 192 に準拠するように構成されます。

戻り値:

attributeList リストには、CAN_NOT_CONVERT、CAN_CONVERT、MEET_SECURITY_LEVEL という 3 つの鍵があります。 鍵ごとに、attributeList のリストが戻されます。 1 つの attributeList には、鍵ストア、管理有効範囲、別名、および理由という証明書情報が含まれています。 例:
{conversionStatus=CAN_NOT_CONVERT
   certificateInfo = { keystore = <keystore name>
                                     managementScope = <managementScope>
		                     alias = <certificate alias>
                                     reason = <reason why certificate can not be converted>
		                  } ...
{conversionStatus= CAN_CONVERT
  certificateInfo = { keystore = <keystore name>
                                    managementScope = <managementScope>
		                    alias = <certificate alias>
                                    reason = empty when certificate can be converted
                                  } ...
{conversionStatus=MEET_SECURITY_LEVEL
 certificateInfo = { keystore = <keystore name>
                                    managementScope = <managementScope>
		                    alias = <certificate alias>
                                    reason = empty when certificate already meets security level

  • Jython を使用:
    wsadmin>$AdminTask listCertStatusForSecurityStandard {-fipsLevel SP800-131 -suiteBLevel 128 }
    
    {CAN_CONVERT {{keystore NodeDefaultKeyStore} {managementScope (cell):testNode
    01Cell:(node):testNode01} {alias default} {reason {Current SignatureAlgorithm
     is SHA256withRSA. SignatureAlgorithm needs to be one of [SHA256withECDSA] to be
     compliant with SP 800-131 - Suite B 128. }}
    {keystore NodeDefaultRootStore} {managementScope (cell):testNode01Cell:(node)
    :testNode01} {alias root} {reason {Current SignatureAlgorithm is SHA256withRS
    A. SignatureAlgorithm needs to be one of [SHA256withECDSA] to be compliant with
    SP 800-131 - Suite B 128. }} }} {CAN_NOT_CONVERT {}} {MEET_SECURITY_STANDARD {}}

convertCertForSecurityStandard

convertCertForSecurityStandard コマンドは、SSL 構成およびプラグインによって使用されるすべての証明書を変換します。

ターゲット・オブジェクト

なし。

必要なパラメーター

なし。

オプション・パラメーター

-fipsLevel
使用するセキュリティー標準のレベルを 指定します。 (ストリング、オプション)。 デフォルト値はありません。 有効な値には、次のものが含まれます。
[Linux][AIX][Windows][ 8.5.5.28 またはそれ以降]FIPS140-3
[Linux][AIX][Windows][ 8.5.5.28 またはそれ以降]この値が設定されている場合、システムはFIPS 140-3モードに準拠するように構成される。
FIPS140-2
この値を設定した場合、システムは、Fips 140-2 モードに準拠するように構成されます。
遷移
この値を設定した場合、システムは、SP800-131 transition モードに準拠するように構成されます。
SP800-131
この値を設定した場合、システムは、SP800-131 strict モードに準拠するように構成されます。

指定する値は、com.ibm.websphere.security.FIPSLevel セキュリティー・カスタム・プロパティーで設定します。

fipsLevel か suiteBLevel のいずれかを指定する必要があります。

-suiteBLevel
suiteBLevel のレベルを指定します。 デフォルト値はありません。 指定する値は、com.ibm.websphere.security.suiteb セキュリティー・カスタム・プロパティーで設定します。 (ストリング、オプション)
有効な値は以下のとおりです。
  • 128 – この値を設定した場合、システムは、スイート B 128 に準拠するように構成されます。
  • 192 – この値を設定した場合、システムは、スイート B 192 に準拠するように構成されます。
-signatureAlgorithm
signatureAlgorithm が FipsLevel および suiteB に準拠しているかどうかを確認します。 準拠している場合、signatureAlgorithm を使用して証明書を変換します。 準拠していない場合、準拠する signatureAlgorithm を使用します。 (ストリング、必須)
-keySize
keySize が FipsLevel および suiteB に準拠しているかどうかを確認します。 準拠している場合、keySize を使用して証明書を変換します。 準拠していない場合、signatureAlgorithm の最小値を使用します。

戻り値:

{conversionStatus=CAN_NOT_CONVERT
certificateInfo = {keystore = <keystore name>
                                    managementScope = <managementScope>
		                    alias = <certificate alias>
                                    reason = <reason why certificate can not be converted>
		              } ...
{conversionStatus=MEET_SECURITY_STANDARD
certificateInfo = {keystore = <keystore name>
                                    managementScope = <managementScope>
		                    alias = <certificate alias>
                                    reason = empty when certificate meets security standard.
                              } ...

  • Jacl を使用:
    wsadmin> $AdminTask convertCertForSecurityStandard {-fipsLevel FIPS140-2 -signatureAlgorithm 
    SHA256withRSA -keySize 2048 }
    
    {CAN_CONVERT {}} {CAN_NOT_CONVERT {}} {MEET_SECURITY_STANDARD {{keystore NodeDef
    aultRootStore} {managementScope (cell):testNode01Cell:(node):testNode01} {
    alias root} {reason {}}
    {keystore NodeDefaultKeyStore} {managementScope (cell):testNode01Cell:(node):
    testNode01} {alias default} {reason {}} }}