O IIS oferece muitas tecnologias diferentes de autenticação. Uma delas é a integração da autenticação do Windows. A Autenticação Integrada do Windows utiliza o Kerberos de negociação ou NTLM para autenticar usuários com base em mensagens de tickets criptografadas passadas entre o navegador e o servidor.
O cenário de aplicação mais comum da autenticação NTLM provavelmente é a autenticação usada em navegadores (protocolo http). Mas, na realidade, o NTLM especifica apenas o processo de autenticação e o formato da mensagem de autenticação. Não está relacionado a acordos específicos. Portanto, não há necessariamente conexão com http. O navegador apenas carrega a mensagem NTLM no cabeçalho do protocolo http e passa a autenticação. Sabemos que http geralmente está em texto simples, então, se a transmissão direta de senhas for muito insegura, o NTLM efetivamente previne esse problema.
Processo de certificação
A autenticação NTLM requer três etapas para ser concluída, e você pode visualizar o processo detalhado de solicitação através da caixa de ferramentas Fiddler.
Passo 1
O usuário faz login no host do cliente digitando o número da conta do Windows e a senha. Antes de fazer login, o cliente armazena em cache o hash da senha inserida, e a senha original é descartada ("a senha original não pode ser armazenada em cache sob nenhuma circunstância", esta é uma diretriz básica de segurança). Um usuário que faz login com sucesso no Windows cliente precisa enviar uma solicitação para a outra parte caso tente acessar os recursos do servidor. O pedido contém um nome de usuário em texto simples.
Passo 2
Quando o servidor recebe a solicitação, ele gera um número aleatório de 16 bits. Esse número aleatório é chamado de desafio ou nonce. O desafio é salvo antes que o servidor o envie para o cliente. Os desafios são enviados em texto simples.
Passo 3
Após receber o desafio enviado de volta pelo servidor, o cliente o criptografa com o hash da senha salvo na etapa 1 e então envia o desafio criptografado para o servidor.
Passo 4
Após receber o desafio criptografado enviado de volta pelo cliente, o servidor envia uma solicitação de autenticação ao cliente para o DC (Domínio). A solicitação inclui principalmente os seguintes três conteúdos: nome de usuário do cliente; Desafio e desafio original com hash de senha do cliente criptografado.
Passos 5 e 6
O DC criptografa o desafio original obtendo o hash da senha da conta com base no nome de usuário. Se o desafio criptografado for o mesmo enviado pelo servidor, significa que o usuário tem a senha correta e a verificação passa, caso contrário a verificação falha. O DC envia os resultados da verificação para o servidor e finalmente retorna para o cliente.
Artigos de referência:
O login do hiperlink está visível.
O login do hiperlink está visível.
O login do hiperlink está visível.
|