Kerberos e IIS6: trabalhando apenas com usuários específicos

1

Estou configurando o Kerberos e tenho alguns problemas estranhos. Eu estou testando com dois usuários um que tem um SPN válido e são confiáveis para delegação (user1) e um que não tem um SPN válido e não é confiável para delegação (user2). Os testes são realizados no servidor e em um cliente. Os usuários são definidos no nível do pool de aplicativos. É assim que está funcionando no momento

From the server:
Using IP to access Application running under user1: Negotiate and chooses NTLM
Using domain name to access Application running under user1: Kerberos
Using IP to access Application running under user2: Negotiate and chooses NTLM
Using domain name to access Application running under user2: Negotiate and chooses NTLM

From the client:
Using IP to access Application running under user1: Kerberos
Using domain name to access Application running under user1: Kerberos
Using IP to access Application running under user2:Logon Process:Kerberos, Unknown user name or bad password
Using domain name to access Application running under user2:  Logon Process:Kerberos, Unknown user name or bad password

É possível resolver isso para que eu só precise usar setspn para os usuários que realmente precisam de delegação, mas fazer com que o kerberos / NTLM funcione com outros usuários que não precisam de delegação? Para que eu possa usar setspn para as contas de usuário que precisam de delegação e apenas usar as outras contas sem precisar configurá-las? Parece que os pacotes Kerberos não encontram o caminho para o servidor para os usuários, já que ele está trabalhando com o NTLM quando estou testando no servidor, mas não quando estou testando a partir do cliente.

    
por user17562 30.12.2009 / 15:26

1 resposta

2

A delegação não funciona com o NTLM e, para que a delegação funcione com o Kerberos, é necessário definir o SPN para a máquina e (se usado) a conta de serviço usada para hospedar o pool de aplicativos.

Normalmente, um SPN é atribuído ao (s) nome (s) da máquina que está hospedando o aplicativo e à conta de usuário usada para a guia "Identidade" do pool de aplicativos do IIS associado ao seu site. Você normalmente precisa usar uma conta que não seja de usuário (serviço) na guia Identidade do pool de aplicativos se o seu aplicativo precisar acessar recursos em outros computadores, enquanto representa os usuários que estão conectados ao aplicativo IIS.

Os SPNs e o Trusted for Delegation não são necessários para usuários que simplesmente precisam fazer logon e usar o aplicativo IIS.

Uma conta que é Trusted for Delegation pode representar outras contas de usuário sem a senha ou até mesmo um token de segurança. Esta é uma função crítica de segurança e nunca deve ser feita para uma conta de usuário comum.

    
por 30.12.2009 / 16:27