14.2. キーストアを生成する
Red Hat build of Keycloak サーバーの SSL で使用する pkcs12
または bcfks
キーストアを作成できます。
14.2.1. PKCS12 キーストア
p12
(または pkcs12
) キーストア (および/またはトラストストア) は、BCFIPS 非承認モードで適切に機能します。
PKCS12 キーストアは、RHEL 9 上の OpenJDK 17 Java を使用して、標準的な方法で生成できます。たとえば、次のコマンドを使用してキーストアを生成できます。
keytool -genkeypair -sigalg SHA512withRSA -keyalg RSA -storepass passwordpassword \ -keystore $KEYCLOAK_HOME/conf/server.keystore \ -alias localhost \ -dname CN=localhost -keypass passwordpassword
システムが FIPS モードの場合、FIPS 対応のセキュリティープロバイダーを使用するためにデフォルトの java.security
ファイルが変更されるため、追加の設定は必要ありません。さらに、PKCS12 キーストアでは、keytool コマンドを使用して簡単に PBE (パスワードベースの暗号化) キーを保存できます。そのため、このキーストアは、Red Hat build of Keycloak KeyStore Vault とともに使用したり、KeyStore 設定ソースに設定プロパティーを保存するために使用するのに最適です。詳細は、Red Hat build of Keycloak の設定 および vault の使用 を参照してください。
14.2.2. BCFKS キーストア
BCFKS キーストアを生成するには、BouncyCastle FIPS ライブラリーとカスタムセキュリティーファイルを使用する必要があります。
まず、/tmp/kc.keystore-create.java.security
などのヘルパーファイルを作成します。ファイルの内容としては、次のプロパティーのみ必要です。
securerandom.strongAlgorithms=PKCS11:SunPKCS11-NSS-FIPS
次に、次のようなコマンドを入力してキーストアを生成します。
keytool -keystore $KEYCLOAK_HOME/conf/server.keystore \ -storetype bcfks \ -providername BCFIPS \ -providerclass org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider \ -provider org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider \ -providerpath $KEYCLOAK_HOME/providers/bc-fips-*.jar \ -alias localhost \ -genkeypair -sigalg SHA512withRSA -keyalg RSA -storepass passwordpassword \ -dname CN=localhost -keypass passwordpassword \ -J-Djava.security.properties=/tmp/kc.keystore-create.java.security
自己署名付き証明書はデモンストレーション目的に限定して使用しているため、実稼働環境に移行する際にこれらの証明書を適切な証明書に置き換えてください。
bcfks
タイプのキーストア/トラストストアを使用して他の操作を行う場合も、同様のオプションが必要です。