問題タブ [mtls]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ssl - envoy プロキシでアプリケーションによって送信された証明書を処理する方法
要件は、アプリケーションが要求で証明書を渡し、envoy プロキシが取得して宛先に送信し、認証を受けることができることです。
envoy の LDS ファイルと CDS ファイルの両方から CA bundle 、CA Cert および key ファイルを削除し、LDS ファイルにパラメータ x-forwarded-client-cert heder を追加しました。
curl スクリプトを使用して CA バンドル、CA 証明書、およびキー ファイルを送信すると、すべてのファイルが .pem 形式に変換されます。テスト :- curl -v http://localhost/token --cacert .. --cert .. -- キー ..
結果:-
証明書がリクエストを通過していません。ハンドシェイク エラーが発生します。
注:- LDS および CDS ファイルから証明書を削除せずに応答を取得します。
spring-cloud - Spring Cloud Gateway http クライアントで証明書のローテーションを処理するにはどうすればよいですか
いくつかのサービスの前で実行されているスプリング クラウド ゲートウェイがあります。これらのサービスには MTLS が必要であり、使用する必要がある証明書は定期的にローテーションされます。クライアント証明書などを構成する方法について議論しているいくつかの投稿を見つけましたが、証明書がローテーションされるたびに作成される HttpClient で証明書を更新する方法がわかりません。
私が見つけた最も近い投稿は、http クライアントの ssl コンテキストをリロードする方法について説明しているこの投稿でした。私はその github ライブラリを使用できず、コードを見るとロジックがかなり複雑に見えます。証明書のローテーションはかなり一般的であるため、Spring Cloud Gateway で証明書を更新するより簡単な方法があるかどうか疑問に思っています
関連記事
Spring Cloud Gateway/Spring WebFlux で x509 相互認証を実装する簡単な例はありますか?
どんな助けでも大歓迎です
ティア