Come posso risolvere l'errore di API Gateway “Execution failed due to configuration error: General SSLEngine problem”?

2 minuti di lettura
0

Amazon API Gateway ha restituito un errore per la mia richiesta API simile al seguente: “Execution failed due to configuration error: General SSLEngine problem”

Risoluzione

Le richieste di API Gateway eseguono un handshake SSL sul backend. Gli handshake SSL di API Gateway corretti devono includere i seguenti requisiti:

Un’autorità di certificazione (CA) supportata

La CA deve essere supportata da API Gateway per HTTP, proxy HTTP e integrazioni private. Per controllare l'impronta digitale della CA, esegui il seguente comando OpenSSL per il tuo sistema operativo:

Linux

openssl x509 -in cert.pem -fingerprint -sha256 -noout

openssl x509 -in cert.pem -fingerprint -sha1 -noout

Windows

openssl x509 -noout -fingerprint -sha256 -inform pem -in [certificate-file.crt]

openssl x509 -noout -fingerprint -sha1 -inform pem -in [certificate-file.crt]

Un certificato ACM valido non scaduto

Per verificare la data di scadenza del certificato, esegui il seguente comando OpenSSL:

openssl x509 -in certificate.crt -text -noout

Nell'output, controlla il timestamp di validità:

Validity
            Not Before: Apr 29 12:49:02 2020 GMT
            Not After : Apr 29 12:49:02 2021 GMT

In questo output di esempio, il certificato è valido il 29 aprile 2020 e scade dopo il 29 aprile 2021.

Un certificato CA valido

Controlla la configurazione del certificato CA eseguendo il seguente comando OpenSSL:

openssl s_client -connect example.com:443 -showcerts

Conferma che:

  • Il soggetto dell'intermediario e del certificato corrisponde all'emittente del certificato dell’entità.
  • Il soggetto del certificato root corrisponde agli emittenti del certificato intermedio.
  • Il soggetto e l'emittente sono gli stessi nel certificato root.

Un certificato che non supera i 2.048 bit

Controlla la dimensione del certificato eseguendo il seguente comando OpenSSL:

openssl x509 -in badssl-com.pem -text -noout | grep -E '(Public-Key):'

Nota: la dimensione del certificato non può superare i 2.048 bit.

Se il tuo certificato non soddisfa nessuno di questi requisiti, aggiorna prima la tua CA privata. Quindi, riemetti un nuovo certificato utilizzando AWS Certificate Manager (ACM).

Informazioni correlate

Integrazioni private per le API REST in API Gateway