Errore di tipo CLI di Adobe I/O durante l’esecuzione di ‘cloudmanagerselect’ in Windows a causa di problemi di attendibilità del certificato

In questo articolo viene illustrato come risolvere un TypeError rilevato durante l’esecuzione del comando Adobe I/O CLI cloudmanager:org:select su Windows, causato da problemi di configurazione dell’attendibilità dei certificati relativi a Node.js e alle soluzioni di sicurezza di rete.

Descrizione description

Ambiente

  • Adobe Experience Manager Cloud Manager tramite Adobe I/O CLI (aio)
  • Node.js v24.14.1
  • Sistema operativo Windows

Problema/Sintomi

Quando si esegue il comando aio cloudmanager:org:select, si verifica l’errore seguente:

TypeError: Cannot read properties of null (reading 'headers')
at ...HttpExponentialBackoff.js:142:35
...
Node.js v24.14.1
  • L’errore viene rilevato in ambienti che utilizzano soluzioni di sicurezza di rete come l’ispezione VPN o SSL.
  • Il problema è correlato alla convalida del certificato Node.js perché per impostazione predefinita non considera attendibile la CA principale aziendale.

Causa

L’errore si verifica perché Node.js non considera attendibile la CA radice aziendale utilizzata dalla soluzione di sicurezza di rete. Di conseguenza, la convalida del certificato non riesce e la libreria di rete CLI riceve un oggetto di risposta null.

Risoluzione resolution

Per correggere l’errore TypeError riscontrato durante l’esecuzione del comando Adobe I/O CLI cloudmanager:org:select in Windows, eseguire la procedura seguente:

  1. Come test diagnostico (non come correzione permanente), disabilita temporaneamente la convalida del certificato TLS per confermare la causa principale:

    • Imposta variabile di ambiente: set NODE_TLS_REJECT_UNAUTHORIZED=0
    • Esecuzione: aio cloudmanager:org:select
    • Se il comando ha esito positivo, ciò conferma che Node.js sta rifiutando la catena di certificati. Non lasciare abilitata questa impostazione, poiché disabilita tutta la convalida TLS e comporta un rischio per la sicurezza.
  2. Per una soluzione permanente, esportare il certificato CA radice dell’accessorio di sicurezza aziendale o di rete da Windows:

    • Apri certmgr.msc.
    • Passare ad Autorità di certificazione principale attendibili.
    • Individuare il certificato radice pertinente ed esportarlo come file .pem con codifica Base 64.
  3. Configura Node.js in modo che consideri attendibile il certificato:

    • Imposta variabile di ambiente: set NODE_EXTRA_CA_CERTS=C:\path\to\corporate-root-ca.pem
    • Esecuzione: aio cloudmanager:org:select
    • Questo consente a Node.js di considerare attendibile la CA aziendale oltre al suo elenco predefinito, senza disabilitare la convalida.
  4. In alternativa, se la versione di Node.js in uso lo supporta, utilizza l’archivio CA di sistema:

    • Imposta variabile di ambiente: set NODE_OPTIONS=--use-system-ca
    • Esecuzione: aio cloudmanager:org:select
recommendation-more-help
experience-cloud-kcs-help-kbarticles