web-dev-qa-db-ja.com

NGINXリバースプロキシを構成して、クライアント証明書のカスタムフィールドを確認します

実際のページに戻る前に、クライアント証明書の「カスタム」フィールドをNGINXで直接確認したいと思います。

ここから理解できるように: http://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_verify_client サブジェクトDN、発行者DN、クライアントシーリアル、終了日などのフィールドで簡単に達成できますしかし、CAが証明書に追加しているカスタムフィールドを検証する方法はありますか?

2
Zakkojo

ちなみに [〜#〜] pki [〜#〜] は機能しますが、nginxはこれらのデータを検証しません。信頼できるCAによって証明書が(直接または中間証明書を介して)署名されていることを確認するだけです。これらのデータを検証するのはCAの仕事です。通常、サブジェクトDNの最後の部分(CNまたはemailAddressの部分)は何らかの方法で検証されます。

nginxは証明書からいくつかの標準拡張機能を抽出できますが、非標準拡張機能を読み取りたい場合は、証明書全体をヘッダーとして追加する必要があります次のようなものを使用してアプリケーションに送信します。

proxy_set_header X-Client-Cert $ssl_client_escaped_cert
1