redhat-developer / redhat-developer/vscode-java

Component Analysis Error - doesn't work behind Zscaler SSL intercepting network component

オープン
#3,442 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

主要言語
TypeScript
スター
2.3k
フォーク
546
平均マージ
20時間 1分
マージ済み PR(30日)
11

説明

[provide a description of the issue]
[Warn - 4:04:18 PM] Component Analysis Error: FetchError: request to https://exhort.stage.devshift.net/api/v4/analysis failed, reason: unable to get local issuer certificate

Environment
  • Operating System: Windows 10 with WSL 2 Ubuntu 22.3.04
  • JDK version: java 21.0.1 2023-10-17
    Java(TM) SE Runtime Environment Oracle GraalVM 21.0.1+12.1 (build 21.0.1+12-jvmci-23.1-b19)
    Java HotSpot(TM) 64-Bit Server VM Oracle GraalVM 21.0.1+12.1 (build 21.0.1+12-jvmci-23.1-b19, mixed mode, sharing)
  • Visual Studio Code version: 1.85.1
  • Java extension version: 1.25.1
Steps To Reproduce
  1. Install extension
Additional information
openssl s_client -CApath /etc/ssl/certs/ -connect exhort.stage.devshift.net:443
CONNECTED(00000003)
depth=3 C = US, ST = California, L = San Jose, O = Zscaler Inc., OU = Zscaler Inc., CN = Zscaler Root CA, emailAddress = support@zscaler.com
verify return:1
depth=2 C = US, ST = California, O = Zscaler Inc., OU = Zscaler Inc., CN = Zscaler Intermediate Root CA (zscloud.net), emailAddress = support@zscaler.com
verify return:1
depth=1 C = US, ST = California, O = Zscaler Inc., OU = Zscaler Inc., CN = "Zscaler Intermediate Root CA (zscloud.net) (t) "
verify return:1
depth=0 CN = exhort.stage.devshift.net
verify return:1
---
Certificate chain
0 s:CN = exhort.stage.devshift.net
  i:C = US, ST = California, O = Zscaler Inc., OU = Zscaler Inc., CN = "Zscaler Intermediate Root CA (zscloud.net) (t) "
  a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256
  v:NotBefore: Dec 17 03:28:51 2023 GMT; NotAfter: Dec 31 03:28:51 2023 GMT
1 s:C = US, ST = California, O = Zscaler Inc., OU = Zscaler Inc., CN = "Zscaler Intermediate Root CA (zscloud.net) (t) "
  i:C = US, ST = California, O = Zscaler Inc., OU = Zscaler Inc., CN = Zscaler Intermediate Root CA (zscloud.net), emailAddress = support@zscaler.com
  a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256
  v:NotBefore: Dec 17 03:28:51 2023 GMT; NotAfter: Dec 31 03:28:51 2023 GMT
2 s:C = US, ST = California, O = Zscaler Inc., OU = Zscaler Inc., CN = Zscaler Intermediate Root CA (zscloud.net), emailAddress = support@zscaler.com
  i:C = US, ST = California, L = San Jose, O = Zscaler Inc., OU = Zscaler Inc., CN = Zscaler Root CA, emailAddress = support@zscaler.com
  a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256
  v:NotBefore: Jun  5 05:33:19 2020 GMT; NotAfter: Jun 23 05:33:19 2041 GMT
---
Server certificate
-----BEGIN CERTIFICATE-----
MIID5jCCAs6gA*******content-removed********Bq8BhCdb
-----END CERTIFICATE-----
subject=CN = exhort.stage.devshift.net
issuer=C = US, ST = California, O = Zscaler Inc., OU = Zscaler Inc., CN = "Zscaler Intermediate Root CA (zscloud.net) (t) "
---
No client certificate CA names sent
Peer signing digest: SHA256
Peer signature type: RSA-PSS
Server Temp Key: ECDH, prime256v1, 256 bits
---
SSL handshake has read 3872 bytes and written 767 bytes
Verification: OK
---
New, TLSv1.3, Cipher is TLS_AES_256_GCM_SHA384
Server public key is 2048 bit
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
Early data was not sent
Verify return code: 0 (ok)
---

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

まず、Zscaler SSL インターセプションを有効にした、報告されている Windows 10 および WSL 2 Ubuntu 環境で、https://exhort.stage.devshift.net/api/v4/analysis へのコンポーネント分析リクエストを再現します。拡張機能が unable-to-get-local-issuer-certificate エラーをどのように処理するかを追跡します。この環境で証明書検証を弱めることなくコンポーネント分析が動作すれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
java, typescript
領域
developer-experience, networking, security
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。