Windows 中环境变量 USERNAME 值的大小写规则是什么?

Windows 中环境变量 USERNAME 值的大小写规则是什么?

我的一位客户说,他的 AD 用户名有时会混合大小写,除此之外,人们能够使用其他大小写的用户名成功登录。因此,ExampleUserAD 中可能有一个,WindowsexampleUSER也允许他们使用其他大小写进行登录。

但这对环境变量有什么影响USERNAME

我自己在没有 AD 的情况下进行了一些测试,在所有测试中,USERNAME用户名的值都是创建的。因此,如果在 Windows 中创建,则使用提供的登录ExampleUser名。这发生在 RDP 中,用户可以自由输入用户名以及使用。EXAMPLEuserExampleUserUSERNAMErunas

我的客户说,至少有时他的情况不是这样,但如果ExampleUser在 AD 中使用 登录exampleUSER,则USERNAME实际上包含当前登录的值exampleUSER。我发现另一个问题也描述了这一点:

对于本办公室的某些用户来说,登录时始终会输入 %USERNAME%。

对于其他用户,%USERNAME 直到最近一直都是规范情况(对于以 elenasimpson 身份登录的用户,它会返回 ElenaSimpson),但上周神秘地开始只偶尔这样做,其余时间按输入返回。重新启动通常会切换到其他行为。

我没有找到任何来自 MS 的官方文档,说明USERNAME在哪些设置和用户输入下的值是多少。有什么规则可以依赖吗?

谢谢!

答案1

Active Directory 可以识别大小写,但不区分大小写。我似乎找不到有关它的 Microsoft 文档,但这是案件。这意味着,当用户首次登录计算机并使用 时EXAMPLEuser,它将使用该案例创建用户文件夹。如果您使用ExampleUser,它还将使用那台新电脑的外壳。

我可能会仔细检查客户是否在进行同类比较。他有域或工作组吗?他是否在使用可以识别大小写的应用程序?他能否使用两个“不同”的帐户登录同一台计算机?如果是在域中,请比较这两个帐户的通用名称、Windows 2000 之前的登录名和 userPrincipalName。

相关内容