Eu preciso desenvolver uma solução Java para autenticação mútua entre o Tomcat 6 (servidor) e o SmartCard "IDGo 300" (cliente).
Para fazer isso, pensei no seguinte esquema:
1.Tomcat (servidor) envia para o SmartCard (cliente) o pedido do seu certificado digital (assinado pela CA).
2.Cliente insere o PIN e seleciona um certificado disponível no cartão inteligente e, em seguida, o miniaplicativo envia seu certificado (assinado pela CA) para o Tomcat. O Tomcat verifica o certificado digital e, se estiver correto, envia o certificado de volta.
3.O applet verifica o certificado do servidor e, se o certificado estiver correto, envia uma confirmação para o servidor.
O servidor dá acesso total ao cliente para usar o aplicativo da web.
Eu tenho algumas perguntas:
1. Este esquema é viável?
2. Eu gostaria de gerenciar tudo através do meu applet e quando o cliente desconecta o cartão inteligente, ele perde o acesso ao servidor.