node.js
クライアントからの安全な ( https
) 接続を必要とするベースの Web アプリがあります。私が望むのは、一部のパスではクライアント証明書認証が必要であり、他のパスでは必要ないということです。
たとえば。ユーザーがhttps://www.example.com/mainにアクセスすると、サーバーはクライアント証明書認証を必要としません (したがって、ブラウザーは何も要求しません)。しかし、ユーザーがhttps://www.example.com/secureに移動すると、クライアント証明書による認証が必要になります (そのため、ブラウザーは、使用する証明書を選択するためのダイアログを表示します)。
どうすればこれを実現できますか。オプションにパスするrequestCert:true
と、 クライアント証明書認証を強制できます。このアプローチの問題は、すべてのパスにクライアント証明書が必要なことです。rejectUnauthorized:true
https.createServer