Korzystam z ADSI Edit, aby sprawdzić właściwości LDAP pojedynczego konta użytkownika w AD. Widzę właściwości takie jak userPrincipalName, ale nie widzę żadnej dla w pełni kwalifikowanej nazwy domeny (FQDN) lub nazwy domeny netbios.
Będziemy konfigurować wykaz globalny (GC), aby zapewnić nam dostęp LDAP do wielu domen, a poprzez konfigurację w aplikacji mapujemy właściwości LDAP na właściwości profilu użytkownika w aplikacji. W typowym AD nazwy FQDN i nazwa domeny Netbios są takie same dla wszystkich użytkowników, ale w przypadku GC potrzebujemy tych dodatkowych informacji. Naprawdę potrzebujemy tylko nazwy domeny Netbios (nazwa FQDN nie jest wystarczająco dobra).
Może istnieje zapytanie LDAP, które można wykonać, aby zażądać tych informacji od obiektu najwyższego poziomu w AD?
źródło
Aby odpowiedzieć na ostatnie pytanie, powinieneś być w stanie ręcznie zweryfikować nazwę NetBios, sprawdzając sekcję Konfiguracja, a następnie Partycje katalogu w ADSIEdit:
Ma to
name
inetBIOSName
właściwości. W przeciwnym razie myślę, że będziesz musiał pobrać go z fqdn / DN, jak sugeruje squillman.źródło
Do wniosku? Microsoft sprawia, że jest to dość proste w .NET. Powinno to zapewnić Ci listę nazw Netbios domeny, których możesz użyć do utworzenia listy niestandardowych obiektów z nazwami DN / DNS / Netbios domeny lub słowników odsyłaczy.
To, co określa, czy atrybut jest dostępny w wykazie globalnym, to (jeszcze inny) atrybut o nazwie isMemberOfPartialAttributeSet. Za pomocą Microsoft SysInternals AD Explorer możesz przeszukiwać kontener Schematu w domenie i wyszukiwać dowolny obiekt, który ma isMemberOfPartialAttributeSet = true, aby zobaczyć wszystkie atrybuty dostępne dla zapytania GC.
źródło
Będziesz musiał przeanalizować go z
dn
(nazwa wyróżniająca) lubAdsDSPath
atrybutów. Jednostki nazw domen są poprzedzone"DC="
tymi atrybutami. Najbardziej z lewej stronyDC=
będzie zawierać nazwę domeny Netbios.Na przykład:
cn=myuser,ou=users,dc=mydomain,dc=mycompany,dc=com
mydomain
to nazwa domeny Netbios.EDYCJA:
Jak zauważa Brian Desmond, niekoniecznie jest to autorytatywny sposób na znalezienie rzeczywistej nazwy netbios, jest to tylko zbieg okoliczności, że zwykle są one skorelowane. Zobacz odpowiedź BoyMars na autorytatywny sposób.
źródło
dsquery computer OU=OU,OU=You,OU=Need,DC=local.domain -o rdn
daje ci to, czego chcesz, z nazwą NetBIOS w cudzysłowie. Ponieważ jest względny, nie będziesz musiał uzyskać pełnej ścieżki. Nie jestem jednak pewien, czy to pomoże PO; zapytał o LDAP, więc nie jest to czysta odpowiedź LDAP.Jeśli masz główną nazwę użytkownika lub nazwę wyróżniającą, możesz użyć biblioteki COM ActiveDS do przetłumaczenia wartości. Poniżej znajduje się przykład tłumaczenia nazwy użytkownika UserPrincipalName na nazwę NT4 (NetBios).
źródło