活动目录组在创建后不能立即可用

本文关键字:不能 创建 活动 | 更新日期: 2023-09-27 18:10:13

我正在我的应用程序中创建活动目录组。我制作安全和分发组。这些组可以很好地创建,但是需要大约10-15分钟才能显示在Active Directory用户和计算机中。

我可以在c#中执行某种强制同步以使其更快发生吗?或者我可以在我的目录中修改一些设置来改变这种行为?

示例代码

        DirectoryEntry ou1= topLevel.Children.Find("OU=ou1");
        DirectoryEntry secGroups = ou1.Children.Find("OU=Security Groups");
        DirectoryEntry newGroup = secGroups.Children.Add("CN=" + name + "", "group");
        newGroup.CommitChanges();
        GroupPrincipal createdGroup = GroupPrincipal.FindByIdentity(this._context, name);
        createdGroup.SamAccountName = name;
        createdGroup.DisplayName = name;            
        createdGroup.GroupScope = GroupScope.Universal;
        createdGroup.Save();
        if (members.Any())
        {
            foreach (var item in members)
            {
                createdGroup.Members.Add(this._context, IdentityType.SamAccountName, item);
            }
            createdGroup.Save();
        }  

使用ASP。. NET MVC, c#, System.DirectoryServices。AccountManagement System.DirectoryServices.ActiveDirectory。

活动目录组在创建后不能立即可用

最可能的答案是它需要时间传播到网络上的所有域控制器。您可以通过ADUC连接到不同的DC,而不是您的应用程序更新的DC。

在您有多个域控制器复制的情况下,可能有帮助的方法是针对您向AD服务器发出的每个呼叫针对特定的DC。

所以不是"LDAP://mydomain.com"而是"LDAP://myDC.mydomain.com"