Solicitações silenciosas de certificado de cliente do IIS 8.5

Solicitações silenciosas de certificado de cliente do IIS 8.5

Tenho uma solicitação do meu cliente que é mais ou menos assim:

Este é um site público comalgunsinformações para funcionários da agência. Meu cliente deseja ter um pop-up na primeira página que apareça apenas para funcionários.

A agência usa cartões CAC para autenticação, esses cartões possuem vários certificados. Em sites internos, é bastante simples configurar o IIS de acordo e depois comparar com o AD.

No entanto, como este é um site externo, não quero autenticar por si só. Quero que o IIS verifique silenciosamente a existência de CAC/certificados, se eles estiverem lá, e execute a lógica pop-up, se não, ignore-a. A segunda parte é toda a codificação, mas preciso saber se o IIS pode tentar procurar silenciosamente o CAC/Certs

Minha ideia original era comparar o IP da solicitação com nossos intervalos de IP internos, mas meus servidores estão atrás de um balanceador de carga e, quando chegasse aos meus servidores, a solicitação teria o IP do balanceador de carga e todas as solicitações estariam dentro do alcance.

É uma situação complexa e todas as investigações que fiz até agora dizem que não pode ser feito, mas queria perguntar

desde já, obrigado

Responder1

Um servidor web não pode “olhar” os smartcards dos clientes – isso éinteiramentefeito pelo navegador da web. Praticamente a única maneira pela qual o IIS pode influenciar isso é enviando uma lista de DNs de emissores de certificados "aceitáveis" (e acho que isso também não é mais possível no TLSv1.3). Mas se o navegador achar que precisa mostrar uma lista de certificados, entãovaimostrar uma lista de certificados.

A maioria dos sites, mesmo aqueles que usam CAC ou outra autenticação de certificado de cliente, possuem uma URL de login dedicada que requer autenticação de certificado, mas o resto do sistema não. Em vez disso, o estado "logado" é realizado por meio de cookies/sessões tradicionais. Isso permite que o sistema ofereça vários métodos de autenticação diferentes. (Não sei se o IIS oferece suporte à autenticação de certificado por URL; talvez seja necessário usar um subdomínio separado para a página de "login".)

Um exemplo é a página de “entrada” em https://account.cern.ch/account/, que na verdade parece lidar com tudo por meio do Microsoft ADFS.

Alternativamente, você pode hospedar todo o webapp em dois subdomínios diferentes: um para acesso público e outro que requer autenticação. ( https://public.cyber.mil/é um exemplo que vi recentemente.)

informação relacionada