CN (nazwa zwyczajowa) nie nadaje się do logowania, ponieważ sama CN nie jednoznacznie identyfikuje użytkownika. Mógłbym mieć
CN=Ryan Ries,OU=Dallas,DC=Domain,DC=com
i mógłbym też mieć
CN=Ryan Ries,OU=New York,DC=Domain,DC=com
CN użytkownika jest również RDN (względna nazwa wyróżniająca). Mają tę samą CN, ale różne nazwy wyróżniające. Możesz zauważyć, że napotkasz problemy, jeśli masz w organizacji dwie osoby o imieniu Ryan Ries, i będziesz musiał utworzyć SamAccountName dla drugiego, coś w stylu rries2
.
Nazwa wyróżniająca (nazwa wyróżniająca) nie jest dobra do zalogowania się, ponieważ kto chce zalogować się do systemu o nazwie użytkownika takiej jak CN=ryan,OU=Texas,DC=brazzers,DC=com
? Podczas gdy używanie nazwy wyróżniającej jednoznacznie i definitywnie identyfikuje użytkownika, denerwujące jest pisanie. Jest to ten sam rodzaj koncepcji między ścieżkami względnymi i ścieżkami bezwzględnymi w systemie plików. Oznacza to również, że wiesz dokładnie, gdzie w strukturze katalogów znajduje się obiekt, bez konieczności jego wyszukiwania. Które często nie.
Nazywa się to rozpoznawaniem niejednoznacznych nazw (ANR) - przeszukiwanie katalogu użytkownika, gdy nie masz jego nazwy wyróżniającej.
UPN (główna nazwa użytkownika) jest całkiem dobra, ponieważ wyglądają jak adresy e-mail, mogą być takie same jak firmowy adres e-mail użytkownika, są łatwe do zapamiętania i wolą się zalogować, ponieważ nazwa zostanie wyszukana najpierw w domenie lokalnej, a potem w lesie.
Microsoft mówi: Celem UPN jest konsolidacja przestrzeni nazw e-mail i logowania, aby użytkownik musiał zapamiętać tylko jedną nazwę. Nazwa UPN jest preferowaną nazwą logowania dla użytkowników systemu Windows. Użytkownicy powinni używać swoich nazw UPN do logowania się do domeny. Podczas logowania UPN jest sprawdzany najpierw przez przeszukanie domeny lokalnej, a następnie katalogu globalnego. Niepowodzenie znalezienia nazwy UPN w domenie lokalnej lub GC powoduje odrzucenie nazwy UPN. Nazwę UPN można przypisać, ale nie jest ona wymagana , gdy tworzone jest konto użytkownika.
Pamiętaj, że „nie jest wymagany” na końcu przy projektowaniu aplikacji.
SamAccountName jest również dobra, ponieważ SamAccountName musi być unikalny dla wszystkich w domenie (ale nie w lesie). Ponadto SamAccountName są krótkie. Większość osób loguje się za pomocą SamAccountNames, nawet jeśli nie identyfikują Cię jednoznacznie w lesie AD, dlatego musisz określić nazwę domeny, aby pasować do nazwy SamAccountName, aby system wiedział, w której domenie próbujesz się zalogować .
Oto świetna dokumentacja na ten temat do dalszego czytania:
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