8.5.6.3. NGINX 証明書ルックアッププロバイダー
Red Hat Single Sign-On サーバーが NGINX リバースプロキシーの背後に配置されると、このプロバイダーを使用できます。サーバーには以下の設定を使用します。
<spi name="x509cert-lookup"> <default-provider>nginx</default-provider> <provider name="nginx" enabled="true"> <properties> <property name="sslClientCert" value="ssl-client-cert"/> <property name="sslCertChainPrefix" value="USELESS"/> <property name="certificateChainLength" value="2"/> </properties> </provider> </spi>
注記
NGINX SSL/TLS モジュール は、クライアント証明書チェーンを公開しません。Red Hat Single Sign-On の NGINX 証明書ルックアッププロバイダーは、Keycloak トラストストア を使用して再ビルドします。クライアント証明書チェーンを再構築するために、すべてのルートおよび中間 CA で keytool CLI を使用して Red Hat Single Sign-On トラストストアに反映させます。
クライアント証明書の HTTP ヘッダーの設定の詳細については、NGINX のドキュメントを参照してください。
NGINX 設定ファイルの例:
... server { ... ssl_client_certificate trusted-ca-list-for-client-auth.pem; ssl_verify_client optional_no_ca; ssl_verify_depth 2; ... location / { ... proxy_set_header ssl-client-cert $ssl_client_escaped_cert; ... } ... }
注記
trusted-ca-list-for-client-auth.pem のすべての証明書を Keycloak トラストストア に追加する必要があります。