¿Qué modo de autenticación debo utilizar?

Este pregunta es bastante habitual y como ocurre en otras ocasiones no existe una única respuesta.

Los tres modos más habituales son Anónimo, Básica e Integrada(Kerberos y NTLM). Cada uno de ellos tiene función y propósito, así que dependiendo de nuestras necesidades.

Anónimo

Aunque puede parecer que este usuario no tiene utilidad porque permite que cualquiera pueda acceder a tu aplicación. Pues esa es precisamente su utilidad, que sirve para las aplicaciones que están abiertas al público.

 

Para los siguientes modos vamos a describir brevemente el concepto de delegación para poder entender qué sistema debemos utilizar. Por defecto, si tú te autenticas contra un servidor (IIS), si queremos que el IIS use tus credenciales para acceder a otro servicio (una base de datos…), no podría, ya que al conectarse contra la base de datos lo haría con las credenciales del IIS y no del cliente que se le conecta porque no posee la clave del usuario. Utilizando la delegación, permitimos que el IIS pueda usar las credenciales del cliente para poder acceder.

Básica

Este modo utiliza un cuadro de diálogo para pedir el usuario y la clave, por lo que se permite que la clave vaya “viajando” (sin cifrar) lo que permite que se pueda acceder a otros recursos.

NTLM

En este caso, el IIS hace de intermediario con el Domain Controller que valida al usuario mediante un hash cifrado con la clave del usuario. Ya que la clave realmente no viaja, con este método no podemos delegar.

Kerberos

Este método permite delegar (si se configura) pero necesita que se acceda utilizando el nombre del servidor y no la IP.

 

Para elegir el que nos interese, debemos tener en cuenta si nuestra aplicación es pública o interna por si usamos el acceso anónimo o no.. Si el tráfico está o no cifrado, porque en el caso de la autenticación básica, si el tráfico no está cifrado no es recomendable utilizarla. Si queremos que use el usuario de Windows y si vamos a delegar.

Espero que esto os sirva de ayuda

- José Ortega Gutiérrez