Un CN (nome comune) non è utile per l'accesso, poiché un CN da solo non identifica in modo univoco un utente. Potrei avere un
CN=Ryan Ries,OU=Dallas,DC=Domain,DC=com
e potrei anche avere un
CN=Ryan Ries,OU=New York,DC=Domain,DC=com
Anche la CN di un utente è un RDN (nome distinto relativo). Hanno la stessa CN, ma DN diversi. Potresti notare che si verificano problemi se nella tua organizzazione ci sono due persone di nome Ryan Ries, e dovrai creare SamAccountName per il secondo in qualche modo rries2
.
Un DN (nome distinto) non è buono per accedere, perché chi vuole accedere a un sistema con un nome utente come CN=ryan,OU=Texas,DC=brazzers,DC=com
? Mentre l'utilizzo di un DN identifica in modo univoco e definitivo un utente, è fastidioso dover digitare. È lo stesso tipo di concetto tra percorsi relativi e percorsi assoluti in un file system. Implica anche che tu sappia esattamente dove si trova l'oggetto nella struttura della directory senza doverlo cercare. Che spesso non lo fai.
Questo si chiama Ambiguous Name Resolution (ANR) - cerca nella directory un utente quando non si ha il suo nome distinto.
UPN (nome principale utente) è abbastanza buono perché sembrano indirizzi e-mail, possono essere gli stessi dell'indirizzo e-mail aziendale dell'utente, sono facili da ricordare e preferiscono accedere perché il nome verrà cercato nel dominio locale prima di cercarlo nella foresta.
Microsoft afferma: il punto dell'UPN è consolidare gli spazi dei nomi di posta elettronica e di accesso in modo che l'utente debba solo ricordare un solo nome. UPN è il nome di accesso preferito per gli utenti Windows. Gli utenti dovrebbero utilizzare i propri UPN per accedere al dominio. Al momento dell'accesso, un UPN viene convalidato prima cercando il dominio locale, quindi il catalogo globale. La mancata ricerca dell'UPN nel dominio locale o del GC comporta il rifiuto dell'UPN. L'UPN può essere assegnato, ma non è richiesto , quando viene creato l'account utente.
Tenere presente che alla fine la progettazione delle applicazioni non richiede "bit" obbligatori.
SamAccountName è anche utile perché SamAccountName deve essere univoco per tutti nel dominio (ma non per la foresta). Inoltre, SamAccountNames è breve. Molte persone accedono con SamAccountNames, anche se non ti identificano in modo univoco in una foresta AD, motivo per cui devi specificare un nome di dominio da associare a SamAccountName in modo che il sistema sappia a quale dominio stai tentando di accedere .
Ecco della grande documentazione sul problema per ulteriori letture:
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