2.2.7 - Autenticador


Mesmo que o principal do usuário esteja presente em um bilhete e somente o servidor de aplicação possa extrair e possivelmente gerenciar tal informação (uma vez que o bilhete é criptografado com a chave secreta do serviço), isso não é suficiente para garantir a autenticidade do cliente. Um impostor pode capturar o bilhete quando ele é enviado por um cliente legítimo ao servidor de aplicação, e num momento oportuno, enviá-lo para obter ilegitimamente o serviço. Neste sentido, incluir o endereço IP da máquina da qual é possível usar o bilhete, não seria muito útil: em uma rede aberta e insegura, endereços de rede são facilmente falsificados. Para resolver o problema, deve-se explorar o fato de que cliente e servidor, ao menos durante a sessão, têm a chave de sessão em comum que somente eles sabem (o KDC também a sabe, uma vez que ele a gerou, mas é confiável por definição). Assim, a seguinte estratégia é aplicada: juntamente com a solicitação contendo o bilhete, o cliente adiciona outro pacote (o autenticador) onde o principal do usuário e momento são incluídos e criptografados com sua chave de sessão; o servidor que oferece o serviço, ao receber a solicitação, desembrulha o primeiro bilhete, extrai a chave de sessão e, se o usuário é realmente quem diz ser, o servidor é capaz de descriptografar o autenticador, extraindo o momento. Se este último difere do tempo do servidor por menos de um tempo configurável, por exemplo, 2 minutos, a autenticação é realizada com sucesso. Isso descreve a importância da sincronização entre máquinas pertencentes ao mesmo domínio.


Próximo: 2.2.8 - Caches

Anterior: 2.2.6 - Chave de Sessão

Voltar ao índice