Tracking issue: custom CA certificate support
オープン
まだ誰も着手していません。
crypto
meta
never-stale
tls
- 主要言語
- JavaScript
- スター
- 122k
- フォーク
- 37.3k
- 平均マージ
- 4日 2時間
- マージ済み PR(30日)
- 283
説明
Trying to track the recent changes that allow easier configuration of custom CA certificate for constrained environments and the backports
- Support
--use-system-cafor macOS https://github.com/nodejs/node/pull/56599 - Support
--use-system-cafor Windows https://github.com/nodejs/node/pull/56833 - Support
--use-system-cafor other Unix-like platforms: https://github.com/nodejs/node/pull/57009 - JS API to query CA certificates: https://github.com/nodejs/node/pull/57107
- JS API to configure the CA certificates https://github.com/nodejs/node/pull/58822
- Encouraging use of
--use-system-cain certificate errors: https://github.com/nodejs/node/pull/57362 - Fixing leak of
--use-system-cahttps://github.com/nodejs/node/pull/56832 - Add NODE_USE_SYSTEM_CA=1 https://github.com/nodejs/node/pull/59276
- Load system CA certificates off thread https://github.com/nodejs/node/pull/59550
- Only load certificates off thread when tls is used https://github.com/nodejs/node/pull/59856
- Make
--use-system-caa per-env option so that workers can enable/disable them individually https://github.com/nodejs/node/pull/60678 - Graceful handling of invalid certificates: https://github.com/nodejs/node/pull/61784 https://github.com/nodejs/node/pull/62576
- Implement certificate distrust on Windows to match Chromium's policy: https://github.com/nodejs/node/blob/5623194a6b16192084d2753a80c350c4ae3dec24/src/crypto/crypto_context.cc#L647-L648
- Make NODE_USE_SYSTEM_CA=0 disable system CA if it gets enabled by default
- Provide a build-time option to enable
--use-system-caby default - Enable --use-system-ca by default
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
この tracking issue に残っている未チェック項目を、src/crypto/crypto_context.cc の 647 行目付近にある参照先の証明書処理箇所と、リンクされている PR 61784 および 62576 から確認してください。完了済みの項目と未完了の項目を比較して、想定されているスコープを把握してください。残っている一覧上の証明書の動作とオプションが実装され、対応するチェックリスト項目にチェックを付けられる状態になれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- javascript, node.js
- 領域
- operating-systems, security
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 静か
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 38/100