Un CN (nombre común) no es bueno para iniciar sesión, porque un CN por sí solo no identifica de forma exclusiva a un usuario. Podría tener un
CN=Ryan Ries,OU=Dallas,DC=Domain,DC=com
y también podría tener un
CN=Ryan Ries,OU=New York,DC=Domain,DC=com
El CN de un usuario también es un RDN (nombre distinguido relativo). Tienen el mismo CN, pero diferentes DN. Puede notar que tiene problemas si tiene dos personas en su organización llamadas Ryan Ries, y tendrá que hacer que SamAccountName para el segundo sea algo así rries2
.
Un DN (nombre distinguido) no es bueno para iniciar sesión, porque ¿quién quiere iniciar sesión en un sistema con un nombre de usuario como CN=ryan,OU=Texas,DC=brazzers,DC=com
? Si bien el uso de un DN identifica de manera única y definitiva a un usuario, es molesto tener que escribir. Es el mismo tipo de concepto entre rutas relativas y rutas absolutas en un sistema de archivos. También implica que sabe exactamente en qué parte de la estructura del directorio se encuentra el objeto sin tener que buscarlo. Lo que a menudo no haces.
Esto se llama Resolución de nombre ambigua (ANR): busca en el directorio un usuario cuando no tiene su nombre distinguido.
UPN (nombre principal del usuario) es bastante bueno porque parecen direcciones de correo electrónico, pueden ser iguales a la dirección de correo electrónico corporativa del usuario, son fáciles de recordar y se prefiere iniciar sesión porque se buscará el nombre primero en el dominio local, antes de buscarlo en el bosque.
Microsoft dice: El objetivo de UPN es consolidar los espacios de nombres de correo electrónico e inicio de sesión para que el usuario solo necesite recordar un solo nombre. El UPN es el nombre de inicio de sesión preferido para los usuarios de Windows. Los usuarios deberían usar sus UPN para iniciar sesión en el dominio. En el momento del inicio de sesión, un UPN se valida primero buscando en el dominio local, luego en el catálogo global. Si no se encuentra el UPN en el dominio local o el GC, se rechaza el UPN. El UPN se puede asignar, pero no es obligatorio , cuando se crea la cuenta de usuario.
Tenga en cuenta ese bit "no requerido" al final al diseñar sus aplicaciones.
SamAccountName también es bueno porque SamAccountName necesita ser único para todos en el dominio (pero no para el bosque). Además, SamAccountNames son cortos. La mayoría de las personas inician sesión con SamAccountNames, a pesar de que no lo identifican de forma exclusiva en un bosque de AD, por lo que debe especificar un nombre de dominio que vaya junto con su SamAccountName para que el sistema sepa en qué dominio está intentando iniciar sesión. .
Aquí hay una gran documentación sobre el tema para leer más:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms677605(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/ms680857(v=vs.85).aspx