【问题标题】:WindowsIdentity.Name doesn't return new name from Active DirectoryWindowsIdentity.Name 不会从 Active Directory 返回新名称
【发布时间】:2011-04-07 20:28:15
【问题描述】:

我们将不胜感激。

我不会告诉你详细信息,但我们必须将所有 Active Directory 用户从 [First name] [Last Name] 重命名为 [First Initial][Last Name] 以腾出用户名的空间。

我们有一个生产 Web 应用程序,一旦用户使用 Windows 身份验证登录,它使用以下代码行从 Windows 获取用户名:

System.Security.Principal.WindowsIdentity.GetCurrent().Name

在我们通过 Active Directory 用户和计算机更新用户帐户后,该行代码需要很长时间才能返回他们的新用户名。在更新之前他们无法登录。

有人知道我可以在网络服务器上做什么来让它继续更新吗?我尝试了以下方法:

1) 在 AD 站点和服务中的所有域控制器之间触发复制 2) 从生产网络服务器上的命令行运行 gpupdate /force 3) 在产品网络服务器上从命令行运行 iisreset

现在我不得不一次更新一个用户,以便其他人都能正常工作。

任何答案、想法、尝试的事情,或 .Net 解释该 .Name 属性实际获得其价值的位置将不胜感激。

【问题讨论】:

    标签: active-directory replication windows-authentication windows-identity


    【解决方案1】:

    据我了解,您所描述的事情可能是由于“缓存凭据”所致。此功能允许用户连接到未连接到网络(或看不到 DC)的计算机上。

    您可以使用以下 GPO 设置来配置此功能:

    计算机->配置->windows设置->安全设置->本地策略->安全选项。 在右侧窗格中的“交互式登录:要缓存的先前登录次数”

    默认值为10,放0。

    此解决方案的缺点是笔记本电脑上的人可能无法重新连接......如果他们没有“看到”DC。

    但这可能是一种解释。

    日本

    【讨论】:

    • 嘿,解决了这个问题!感谢 GPO 指针。重大帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-12
    • 1970-01-01
    相关资源
    最近更新 更多