Przed włączeniem, rozszerzeniem i zmianą LDAP przez Microsoft większość implementacji miała obiekty reprezentujące korzeń drzewa. Tzn. Musisz gdzieś zacząć.
Z powodów, dla których nie jestem całkowicie pewien, w Active Directory każda domena w drzewie / lesie jest zrootowana nazwą o nazwie dc = domena, dc = com, która tak naprawdę nie jest dwoma oddzielnymi obiektami, a raczej wirtualnym katalogiem głównym przestrzeń nazw.
Myślę, że niektóre z nich wynikają z faktu, że niezależnie od tego, co mówi się o usłudze Active Directory, wciąż jest to seria połączonych domen, a każda domena musi być traktowana jako samodzielna jednostka.
Teraz istnieją automatyczne przechodnie relacje zaufania w drzewie AD, dzięki czemu użytkownicy końcowi mają mniejsze znaczenie, ale mimo że przestrzeń nazw wygląda na ciągłą, tak naprawdę nie jest.
Staje się to bardziej widoczne w przypadku niektórych reguł nazewnictwa w AD. Na przykład sAMAccountName musi być unikalny w domenie, niezależnie od tego, czy znajduje się w tym samym kontenerze, czy nie. Tzn. Pełna nazwa wyróżniająca musi być unikalna (nie możesz mieć dwóch użytkowników John Smith w tym samym kontenerze), ale krótka nazwa używana do wielu rzeczy wewnętrznie (sAMAccountName) musi być unikalna w całej domenie.
Inne usługi katalogowe mają nieco podobne wymagania, np. Unikalny identyfikator powinien być naprawdę unikalny w całym katalogu, ale to więcej, ponieważ aplikacje zwykle przyjmują takie założenie, ponieważ twórcy aplikacji byli zbyt leniwi, aby poradzić sobie ze złożonym problemem (nie obwiniam jest to trudny problem), jak obsługiwać dwóch użytkowników o krótkich nazwach jsmith próbujących skorzystać z usługi, ale istniejących w dwóch różnych kontenerach. (Tj. Być może cn = jsmith, ou = Londyn, dc = acme, dc = com i cn = jsmith, ou = Texas, dc = acme, dc = com).
Jak aplikacja korzystająca z tego katalogu powinna decydować, którego użytkownika użyć? Zwykle odpowiedzią jest decyzja użytkownika. Ale to oznacza złapanie tego przypadku, przedstawienie interfejsu użytkownika użytkownikowi, który wybierze i co tam jeszcze.
Większość autorów aplikacji po prostu ignoruje tę możliwość i po prostu używa niepowtarzalnego identyfikatora lub sAMAccountName, ponieważ jest to unikalne (w pewnym sensie) i łatwiejsze do zrobienia.
Różnica między unikalnym identyfikatorem a sAMAccountName polega na tym, że unikalny identyfikator powinien być unikalny w całej przestrzeni nazw katalogów. Podczas gdy sAMAccountName ma gwarancję unikalności w obrębie domeny. Jeśli drzewo AD ma kilka domen, nie ma gwarancji wyjątkowości między domenami.