Sem realmente cavar, eu diria que você não pode convencer os navegadores a fazer uma pesquisa que não diferencia maiúsculas de minúsculas aqui. No caso de um serviço web simples, você poderia criar outro VirtualHost onde todos os clientes são distribuídos (digamos link ).
Isso significaria que o cliente negocia o TLS uma vez, depois ele tem um redirecionamento e, em seguida, outra negociação de TLS.
VirtualHost detect-cert.example.com:
- certifique-se de aceitar
optional_no_ca
certificados dos navegadores - não
SSLCACertificateFile
- veja a variável de ambiente
SSL_CLIENT_I_DN
ouSSL_CLIENT_CERT_CHAIN_<n>
- redirecionar (HTTP 302) um navegador para
ca1clients.example.com
ouca2clients.example.com
VirtualHost ca1clients.example.com:
- certifique-se de que
require
certificados dos navegadores -
SSLCACertificateFile CA_lowercase.pem
VirtualHost ca2clients.example.com:
- certifique-se de que você
require
-
SSLCACertificateFile CA_uppercase.pem
Mas seu aplicativo da Web precisa suportar dois nomes de domínio ao mesmo tempo (por exemplo, por meio do X-Forwarded-Host
header). Ele nunca deve informar a um navegador que entrou por ca2clients.example.com
para reinserir em ca1clients.example.com
. Outra dificuldade seria os usuários trocarem links entre si (por exemplo, enviando links para algum conteúdo).