예제 #1
0
        public static string GetFSMORoleCN(DsDomain dsdomain, FSMORoles fsmoRole)
        {
            string dn = null;

            if (dsdomain is AddsDomain)
            {
                string defaultNC = LdapUtility.ConvertUshortArrayToString(
                    ((AddsDomain)dsdomain).DomainNC.StringName);

                switch (fsmoRole)
                {
                case FSMORoles.PDC:
                {
                    dn = defaultNC;
                    break;
                }

                case FSMORoles.RidAllocation:
                {
                    dn = "CN=RID Manager$,CN=System," + defaultNC;
                    break;
                }

                case FSMORoles.Infrastructure:
                {
                    dn = "CN=Infrastructure," + defaultNC;
                    break;
                }

                default:
                    break;
                }
            }
            else
            {
                switch (fsmoRole)
                {
                case FSMORoles.Schema:
                {
                    dn = LdapUtility.ConvertUshortArrayToString(
                        dsdomain.SchemaNC.StringName);
                    break;
                }

                case FSMORoles.DomainNaming:
                {
                    dn = "CN=Partitions," + LdapUtility.ConvertUshortArrayToString(
                        dsdomain.ConfigNC.StringName);
                    break;
                }

                default:
                    break;
                }
            }



            return(dn);
        }
 public ServerFSMORoleAttribute(FSMORoles serverFSMORole)
 {
     serverRoles = serverFSMORole;
 }
예제 #3
0
 /// <summary>
 /// Get the DSName of FSMO Role object
 /// </summary>
 /// <param name="domain">Root Domain</param>
 /// <param name="role">The FSMO role</param>
 /// <returns>DSName of the FSMO role object</returns>
 public static DSNAME GetFsmoRoleObject(DsDomain domain, FSMORoles role)
 {
     throw new NotImplementedException();
 }