[FIPS] connectivity: jks-js pulls non-FIPS crypto (MD5, SHA-1, DES) into all consumers
I maintainer di solito rispondono entro 1 giorno
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Refactoring
- Chiarezza
- Da chiarire
- Stato di attività
- Attiva
- Stack tecnologico
- typescript
Direzione di ricerca
Iniziate esaminando la catena di dipendenze di @sap-cloud-sdk/connectivity e il supporto per JKS introdotto in #6153, incluso il commit ab96aff. Confrontate la sostituzione di jks-js con un parser compatibile con FIPS con la possibilità di rendere facoltativo il supporto per JKS, quindi confermate la direzione preferita e definite il completamento come la rimozione dei pacchetti non compatibili con FIPS dai consumer che non utilizzano JKS.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
@sap-cloud-sdk/connectivity unconditionally depends on jks-js, which brings node-forge and node-rsa into the production dependency tree of every consumer. These three packages implement non-FIPS algorithms (MD5, SHA-1, DES, 3DES, AES-ECB, RIPEMD-160, RSA+MD5, RSA+SHA-1) in pure JavaScript, bypassing the OpenSSL FIPS provider. Any consumer that must pass a FIPS compliance scan is blocked.
Dependency chain
@sap-cloud-sdk/[email protected]
→ [email protected] (MD5, SHA-1, DES via node-forge)
→ [email protected] (MD5, SHA-1, DES, 3DES, AES-ECB, RIPEMD-160)
→ [email protected] (RSA+MD5, RSA+SHA-1)
jks-js was introduced in #6153 (commit ab96aff) to add JKS keystore support. Verified against latest @sap-cloud-sdk/[email protected] — still present.
Impact
Consumers that only use PEM certificates never reach the JKS code path at runtime, but the non-FIPS packages remain in node_modules and are flagged by FIPS compliance scanners. Example: a consumer using ClientCertificateAuthentication with type: 'pem' exclusively — no JKS use at runtime — is still blocked.
Suggested fix
Escalate to @sap-cloud-sdk maintainers to either:
- Replace
jks-jswith a FIPS-compatible JKS keystore parser, or - Make JKS support opt-in so services that don't use it avoid the dependency entirely.
Ask
- Confirm which direction the team prefers.
- Provide a rough timeline so downstream consumers can plan.
cc: @davidkna-sap @KavithaSiva @emincihangeri
- Lingua principale
- TypeScript
- Stelle
- 221
- Fork
- 79
- Merge medio
- 13h 27m
- PR unite (30g)
- 22
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di SAP/cloud-sdk-js
-
OData v2: Edm.Time with fractional seconds is parsed with seconds set to 0Forse già presa @sebxt l’ha presa 8 giorni fa. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
SAP/cloud-sdk-js#7043 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
OData v2: Edm.DateTime and Edm.DateTimeOffset payload serialization drops millisecondsForse già presa @sebxt l’ha presa 9 giorni fa. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
SAP/cloud-sdk-js#7035 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 65/100
SAP/cloud-sdk-js#7067 ·
I maintainer di solito rispondono entro 1 giorno
-
feature request tok:pd5
Difficoltà 3/5 1-2 giorni Idoneità per principianti 62/100
SAP/cloud-sdk-js#7058 ·
I maintainer di solito rispondono entro 1 giorno
-
tok:pd5
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
SAP/cloud-sdk-js#7047 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di SAP/cloud-sdk-js
Issue simili
-
area:docs documentation good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 12 giorni
-
area:docs good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
thainanluiz/TSSuper#30 ·
-
[analytics-core] getQueryParams does not decode `+` as space and truncates values containing `=`Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
amplitude/Amplitude-TypeScript#2179 · 1 commento ·
I maintainer di solito rispondono entro 2 giorni
-
ci good first issue severity: low
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
TMHSDigital/GH-Arcade#111 ·