Resumidamente, os seguintes passos são executados quando um usuário tentar acessar um determinado serviço em um Application Server.

  1. O usuário realiza uma autenticação em sua estação (utilizando usuário e senha, por exemplo).
  2. O Cliente Kerberos então executa uma função hash sobre a senha digitada e isso se torna a Chave Secreta do Cliente/Usuário (aqui chamada de K1).
  3. O Cliente Kerberos envia uma mensagem em texto claro para o Authentication Server (AS) contendo o Identificador do Usuário (nessa fase, não é enviada a chave K1 e/ou a senha do usuário para o AS).
  4. O AS gera a chave secreta (K1) aplicando a mesma função hash utilizada pelo usuário a partir da senha do usuário encontrada no servidor de banco de dados (por exemplo, o Active Directory no Windows Server).
  5. O AS envia de volta ao cliente duas mensagens:
    1. Mensagem A contendo a Chave de Sessão do TGS (K2) cifrada utilizando a chave K1 gerada no passo anterior.
    2. Mensagem B contendo o TGT (Ticket-Granting-Ticket), que inclui a identificação do cliente, endereço de rede do cliente, prazo de validade do ticket e a Chave de Sessão do cliente TGS (K2). Todo o conteúdo do ticket TGT é criptografado usando a Chave Secreta TGS, gerada pelo Servidor TGS e enviada de forma cifrada na Mensagem A.
  6. O cliente recebe mensagens A e B e tenta decifrá-las utilizando a chave K1 e, após, tenta recuperar a Chave TGS da Sessão (k2), que está cifrada na mensagem A. Caso não consiga, fica claro que o usuário não possui a chave secreta (k1) e, portanto, não deve ser autenticado.
Copyright © 2016 AIEC.