static void DirectoryEntryConfigurationSettings() { // Bind to current domain DirectoryEntry entry = new DirectoryEntry(domainADsPath); DirectoryEntryConfiguration entryConfiguration = entry.Options; // Display directory entry configuration // Notice that options property (entry.Options) is the parameter to the function DisplayConfigurationEntryConfiguration(entry.Options); // Enable paged search and referral chasing in directory entry configuration // Clear security masks in directory entry configuration // Notice that the changes are set in the reference object (entryConfiguration object) entryConfiguration.PageSize = 50; entryConfiguration.Referral = ReferralChasingOption.Subordinate; // Or can be done directly to the property (entry.Options property) entry.Options.SecurityMasks = SecurityMasks.None; // Display directory entry configuration modified // Notice that options property (entry.Options) is the parameter to the function DisplayConfigurationEntryConfiguration(entry.Options); // Set the defaults again for directory entry configuration SetDefaultsForEntryConfiguration(entryConfiguration); // Display directory entry configuration modified to defaults DisplayConfigurationEntryConfiguration(entry.Options); }
static void SetDefaultsForEntryConfiguration(DirectoryEntryConfiguration entryConfiguration) { entryConfiguration.PageSize = 512; entryConfiguration.PasswordEncoding = PasswordEncodingMethod.PasswordEncodingSsl; entryConfiguration.PasswordPort = 636; entryConfiguration.Referral = ReferralChasingOption.External; entryConfiguration.SecurityMasks = SecurityMasks.Owner | SecurityMasks.Group | SecurityMasks.Dacl; }
private void ShowConfiguration(DirectoryEntry directoryEntry) { lstResults.Items.Add("Configuration for \"" + directoryEntry.Name + "\""); DirectoryEntryConfiguration directoryEntryConfiguration = directoryEntry.Options; lstResults.Items.Add(" PageSize=" + directoryEntryConfiguration.PageSize); lstResults.Items.Add(" PasswordEncoding=" + directoryEntryConfiguration.PasswordEncoding); lstResults.Items.Add(" PasswordPort=" + directoryEntryConfiguration.PasswordPort); lstResults.Items.Add(" Referral=" + directoryEntryConfiguration.Referral); lstResults.Items.Add(" SecurityMasks=" + directoryEntryConfiguration.SecurityMasks); }
static void DisplayConfigurationEntryConfiguration(DirectoryEntryConfiguration entryConfiguration) { Console.WriteLine("DISPLAYING DIRECTORY ENTRY CONFIGURATION"); Console.WriteLine("Server\t\t\t\t" + entryConfiguration.GetCurrentServerName()); Console.WriteLine("Page Size\t\t\t" + entryConfiguration.PageSize.ToString()); Console.WriteLine("Password Encoding\t\t" + entryConfiguration.PasswordEncoding.ToString()); Console.WriteLine("Password Port\t\t\t" + entryConfiguration.PasswordPort.ToString()); Console.WriteLine("Referral\t\t\t" + entryConfiguration.Referral.ToString()); Console.WriteLine("Security Masks\t\t\t" + entryConfiguration.SecurityMasks.ToString()); Console.WriteLine("Is Mutually Authenticated\t" + entryConfiguration.IsMutuallyAuthenticated().ToString()); Console.WriteLine(); }
public static void DirectoryEntryConfigurationSettings(string domainADsPath) { // Bind to current domain DirectoryEntry entry = new DirectoryEntry("LDAP://192.168.92.200/" + domainADsPath, "contoso\\administrator", "Br@sil01"); DirectoryEntryConfiguration entryConfiguration = entry.Options; Console.WriteLine("Server: " + entryConfiguration.GetCurrentServerName()); Console.WriteLine("Page Size: " + entryConfiguration.PageSize.ToString()); Console.WriteLine("Password Encoding: " + entryConfiguration.PasswordEncoding.ToString()); Console.WriteLine("Password Port: " + entryConfiguration.PasswordPort.ToString()); Console.WriteLine("Referral: " + entryConfiguration.Referral.ToString()); Console.WriteLine("Security Masks: " + entryConfiguration.SecurityMasks.ToString()); Console.WriteLine("Is Mutually Authenticated: " + entryConfiguration.IsMutuallyAuthenticated().ToString()); Console.WriteLine(); Console.ReadLine(); }