Skip Ribbon Commands
Skip to main content

Ondrej Sevecek's Blog

:

Engineering and troubleshooting by Directory Master!
Ondrej Sevecek's Blog > Posts > Pre-Windows 2000 User Logon Name - to má být nějaká sranda?
září 19
Pre-Windows 2000 User Logon Name - to má být nějaká sranda?

Jak jistě víte, v Active Directory existují od roku 2000 dva "loginy". Prostě každý uživatel má dvě přihlašovací jména. Jedno se jmenuje user principal name (UPN) a je uložené v atributu userPrincipalName. Druhé je security accounts manager account name a je uloženo v atributu samAccountName.

UPN je ve formátu login@upn.suffix. UPN suffix je ve výchozím stavu FQDN jméno domény, takže něco jako gopas.local, nebo ad.gopas.cz. UPN suffixy se ale dají přidávat libovolné, takže uživatelé mohou mít UPN úplně stejné, jako emailovou adresu. Prefix, tedy to co se nazývá nesprávně login, může mít až 64 znaků.

Naopak SAM account name je složeno vždy natvrdo ve formátu NETBIOSDOMAIN\samlogin. Jméno domény je vždy to tzv. "staré jméno", to krátké NetBIOS jméno domény, které může mít maximálně 15 znaků. "Login" uživatele jsem schválně napsal jako samlogin, protože to může být úplně jiné, než je použitý login u UPN. Nejen že může být jiný, on také musí být jiný za určitých okolností. Samlogin může být totiž maximálně 20 znaků, takže pokud upnlogin máte delší (až 64), tak se samlogin bude lišit stoprocentně.

SAM account name mít musíte, musí být unikátní v doméně. UPN mít nemusíte vůbec. Pokud ho ale máte, musí být unikátní celoforestově.

Podle SAM account name se například pojmenovávají profilové adresáře a obsahuje ho i proměnná prostředí %USERNAME%, bez ohledu na to, jaký login jste zadali při přihlašování.

Řadiče domény (DC), od domain functional level (DFL) na úrovni Windows 2003 umožňují dokonce, abyste při vytváření uživatelských účtů zadali pouze UPN. SAM account name se potom vygeneruje automaticky s náhodnou hodnotou.

Dobře. V DSA konzoli se SAM account name nazývá Pre-Windows 2000 user account name. Snaží se to naznačit, že by se mělo nově, od roku 2000 používat raději UPN. Ale obvykle všechny aplikace přijímají jedno z nich a je jedno které.

Až na některé idiotské aplikace

Jako je třeba SQL Server až do verze 2012. Známému (Erik Caha) dokonce přímo sám vývojový tým sdělil, že použití UPN se ani nikdy do budoucna neplánuje. Pokud tedy chcete založit například login do SQL serveru, UPN prostě použít nemůžete. Nejde ani zadat do .INI souboru pro automatickou instalaci.

Druhý kámoš je SharePoint 2010. Zrovna skriptuju automatickou instalaci. Všude to jde zadat jako UPN, jenom do farm administrators skupiny musím přidávat SAM account name. Krása. Ještě že je rok 2012.

Duplicitní SAM account name

Když už se tu tak rozepisuji, tak ještě jedna zajímavost. Loginy musí být samozřejmě unikátní. To se kontroluje při jejich vytváření. Ale AD je distribuovaný systém s multimaster replikací, takže nějaké chyby nastávat mohou.

Duplicitní SAM account name i UPN tedy samozřejmě vzniknout mohou. Buď kvůli replikačnímu spoždění (replication latency), nebo třeba kvůli obnově smazaných objektů apod.

Když tohle nastane, AD to zprvu nijak neřeší. Až v okamžiku, kdy se pokoušíte ověřit jedním z těch loginů, DC vyhledá více možných výsledků. Pokud se hlásíte pomocí UPN, přihlásí vás na první účet ze seznamu těch duplicitních (x-plicitních) a dál to neřeší. Pokud se hlásíte pomocí SAM account name, přihlásí vás také na první z nich. Ale v případě SAM account name ještě navíc ty ostatní loginy přejmenuje na $DUPLICATE a náhodné číslo.

Takhle se projevují mnohdy třeba účty počítačů, pokud je vytváříte nějak automaticky, připojujete počítače z image, a máte problémy s replikací, nebo jen spoždění mezi pobočkami a sítěmi.

Comments

There are no comments for this post.

Add Comment

Title


Pole Title nemusíte vyplňovat, doplní se to samo na stejnou hodnotu jako je nadpis článku.

Author *


Pole Author nesmí být stejné jako pole Title! Mám to tu jako ochranu proti spamu. Roboti to nevyplní dobře :-)

Body *


Type number two as digit *


Semhle vyplňte číslici dvě. Předchozí antispemové pole nefunguje úplně dokonale, zdá se, že jsou i spamery, které pochopily, že je občas potřeba vyplnit autora :-)

Email


Emailová adresa, pokud na ni chcete ode mě dostat odpověď. Nikdo jiný než já vaši emailovou adresu neuvidí.

Attachments