gpt4 book ai didi

active-directory - 在 Active Directory 中更新全名

转载 作者:行者123 更新时间:2023-12-02 00:43:35 24 4
gpt4 key购买 nike

我已经深入了解 Active Directory(我是一名 Web 开发人员,去图)我有一个用户,我已经更改了名字/姓氏,但全名没有改变,这是导致共享 BCM 数据库出现问题。如何刷新它以便更新全名。

我不知道 AD 是如何工作的,但出于某种原因,上级决定这是我的工作。

非常感谢任何帮助。

最佳答案

您使用的是 .NET 3.5 吗?如果是这样,请查看这篇 MSDN 文章:Managing Directory Security Principals in the .NET Framework 3.5 .

查看这篇 CodeProject 文章:Howto: (Almost) Everything In Active Directory via C#

看看这个 list of Code Samples用于 MSDN 上的 System.DirectoryServices。

如果您认真对待使用 C# 或 VB.NET 进行 Active Directory 编程,请购买这本书:

The .NET Developer's Guide to Directory Services Programming

alt text

更新“全名”(实际上:DisplayName)应该像(在 .NET 3.5 上)一样简单:

PrincipalContext ctx = new PrincipalContext(ContextType.Domain, "yourDomain");

UserPrincipal up = UserPrincipal.FindByIdentity(ctx, "(your user name)");

if (up != null) // we found the user
{
up.DisplayName = "new display name for your user";
up.Save();
}

就是这样! :-)

请注意:您需要将 NetBIOS 域名(例如“MICROSOFT”)传递给 PrincipalContext 的构造函数,而不是 DNS 样式名称 (microsoft.com)。

希望这对您有所帮助!

马克

.NET 2.0 更新:

如果您在 .NET 2.0 上运行并且需要更新用户的“displayName”,给定他的“SAMAccountName”(基本上是他没有域的用户名),则代码如下:

// set the root for the search
DirectoryEntry root = new DirectoryEntry("LDAP://dc=yourcompany,dc=com");

// searcher to find user in question
DirectorySearcher ds = new DirectorySearcher(root);

// set options
ds.SearchScope = SearchScope.Subtree;
ds.Filter = string.Format("(&(sAMAccountName={0})(objectCategory=Person))", yourUserName);

// do we find anyone by that name??
SearchResult result = ds.FindOne();

if (result != null)
{
// if yes - retrieve the full DirectoryEntry for that user
DirectoryEntry userEntry = result.GetDirectoryEntry();

// set the "displayName" property to the new value
userEntry.Properties["displayName"].Value = yourNewUserFullName;

// save changes back to AD store
userEntry.CommitChanges();
}

关于active-directory - 在 Active Directory 中更新全名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1741277/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com