Mi sono imbattuto in un problema oggi e sono interessato a scoprire se il comportamento visto è standard o non standard.
Abbiamo diversi server esposti attraverso un servizio di bilanciamento del carico che serve richieste https. Questi server utilizzano i certificati TLS con tre voci Nome alternativo soggetto.
Ad esempio:
- myservice.mycompany.int
- dc1.myservice.int
- dc2.myservice.int
Abbiamo ricostruito uno dei server e un nuovo certificato è stato distribuito su quel server. Le voci Nome soggetto soggetto sul nuovo certificato avevano le stesse voci mostrate sopra ma in un ordine diverso.
Abbiamo avuto un sistema client che ha avuto problemi dopo che questo server è entrato nel servizio di bilanciamento del carico in cui stava generando i seguenti errori:
Caused by: javax.net.ssl.SSLHandshakeException: server certificate change is restricted during renegotiation
Quindi sono giunto alla conclusione che ciò era dovuto all'ordine delle voci SAN quando una rinegoziazione della sessione SSL veniva eseguita dal sistema client e otteneva un certificato con le voci SAN in un ordine diverso.
L'ordine delle voci SAN dovrebbe essere significativo quando si determina se un certificato è equivalente ai fini della rinegoziazione TLS?