private void BindSettings(OrganizationPasswordSettings settings) { txtMinimumLength.Text = settings.MinimumLength.ToString(); txtMaximumLength.Text = settings.MaximumLength.ToString(); txtMinimumUppercase.Text = settings.UppercaseLettersCount.ToString(); txtMinimumNumbers.Text = settings.NumbersCount.ToString(); txtMinimumSymbols.Text = settings.SymbolsCount.ToString(); txtLockedOut.Text = settings.AccountLockoutThreshold.ToString(); txtEnforcePasswordHistory.Text = settings.EnforcePasswordHistory.ToString(); txtAccountLockoutDuration.Text = settings.AccountLockoutDuration.ToString(); txtResetAccountLockout.Text = settings.ResetAccountLockoutCounterAfter.ToString(); chkLockOutSettigns.Checked = settings.LockoutSettingsEnabled; chkPasswordComplexity.Checked = settings.PasswordComplexityEnabled; txtMaxPasswordAge.Text = settings.MaxPasswordAge.ToString(); }
private void UpdateFineGrainedPasswordPolicy(Runspace runspace, string psoName, OrganizationPasswordSettings settings) { var cmd = new Command("Set-ADFineGrainedPasswordPolicy"); cmd.Parameters.Add("Identity", psoName); cmd.Parameters.Add("MinPasswordLength", settings.MinimumLength); cmd.Parameters.Add("PasswordHistoryCount", settings.EnforcePasswordHistory); cmd.Parameters.Add("ComplexityEnabled", false); cmd.Parameters.Add("ReversibleEncryptionEnabled", false); cmd.Parameters.Add("MaxPasswordAge", new TimeSpan(settings.MaxPasswordAge*24, 0, 0)); if (settings.LockoutSettingsEnabled) { cmd.Parameters.Add("LockoutDuration", new TimeSpan(0, settings.AccountLockoutDuration, 0)); cmd.Parameters.Add("LockoutThreshold", settings.AccountLockoutThreshold); cmd.Parameters.Add("LockoutObservationWindow", new TimeSpan(0, settings.ResetAccountLockoutCounterAfter, 0)); } else { cmd.Parameters.Add("LockoutDuration", new TimeSpan(0)); cmd.Parameters.Add("LockoutThreshold", 0); cmd.Parameters.Add("LockoutObservationWindow", 0); } ExecuteShellCommand(runspace, cmd); }
public void ApplyPasswordSettings(string organizationId, OrganizationPasswordSettings settings) { HostedSolutionLog.LogStart("ApplyPasswordPolicy"); Runspace runspace = null; var psoName = FormOrganizationPSOName(organizationId); try { runspace = OpenRunspace(); if (!FineGrainedPasswordPolicyExist(runspace, psoName)) { CreateFineGrainedPasswordPolicy(runspace, organizationId, psoName, settings); } else { UpdateFineGrainedPasswordPolicy(runspace, psoName, settings); } string groupPath = GetGroupPath(organizationId); SetFineGrainedPasswordPolicySubject(runspace, groupPath, psoName); if (settings.MaxPasswordAge == 0) { SetPasswordNeverExpiresInFineGrainedPasswordPolicy(runspace, psoName); } } catch (Exception ex) { HostedSolutionLog.LogError(ex); throw; } finally { CloseRunspace(runspace); HostedSolutionLog.LogEnd("ApplyPasswordPolicy"); } }
/// <remarks/> public void ApplyPasswordSettingsAsync(string organizationId, OrganizationPasswordSettings passwordSettings, object userState) { if ((this.ApplyPasswordSettingsOperationCompleted == null)) { this.ApplyPasswordSettingsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnApplyPasswordSettingsOperationCompleted); } this.InvokeAsync("ApplyPasswordSettings", new object[] { organizationId, passwordSettings}, this.ApplyPasswordSettingsOperationCompleted, userState); }
/// <remarks/> public void ApplyPasswordSettingsAsync(string organizationId, OrganizationPasswordSettings passwordSettings) { this.ApplyPasswordSettingsAsync(organizationId, passwordSettings, null); }
/// <remarks/> public System.IAsyncResult BeginApplyPasswordSettings(string organizationId, OrganizationPasswordSettings passwordSettings, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("ApplyPasswordSettings", new object[] { organizationId, passwordSettings}, callback, asyncState); }
public void ApplyPasswordSettings(string organizationId, OrganizationPasswordSettings passwordSettings) { this.Invoke("ApplyPasswordSettings", new object[] { organizationId, passwordSettings}); }
private OrganizationPasswordSettings GetSettings() { var settings = new OrganizationPasswordSettings(); settings.MinimumLength = Utils.ParseInt(txtMinimumLength.Text, 3); settings.MaximumLength = Utils.ParseInt(txtMaximumLength.Text, 7); settings.UppercaseLettersCount = Utils.ParseInt(txtMinimumUppercase.Text, 3); settings.NumbersCount = Utils.ParseInt(txtMinimumNumbers.Text, 3); settings.SymbolsCount = Utils.ParseInt(txtMinimumSymbols.Text, 3); settings.AccountLockoutThreshold = Utils.ParseInt(txtLockedOut.Text, 3); settings.EnforcePasswordHistory = Utils.ParseInt(txtEnforcePasswordHistory.Text, 3); settings.AccountLockoutDuration = Utils.ParseInt(txtAccountLockoutDuration.Text, 3); settings.ResetAccountLockoutCounterAfter = Utils.ParseInt(txtResetAccountLockout.Text, 3); settings.LockoutSettingsEnabled = chkLockOutSettigns.Checked; settings.PasswordComplexityEnabled =chkPasswordComplexity.Checked; settings.MaxPasswordAge = Utils.ParseInt(txtMaxPasswordAge.Text, 42); return settings; }
/// <remarks/> public void UpdateOrganizationPasswordSettingsAsync(int itemId, OrganizationPasswordSettings settings, object userState) { if ((this.UpdateOrganizationPasswordSettingsOperationCompleted == null)) { this.UpdateOrganizationPasswordSettingsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnUpdateOrganizationPasswordSettingsOperationCompleted); } this.InvokeAsync("UpdateOrganizationPasswordSettings", new object[] { itemId, settings}, this.UpdateOrganizationPasswordSettingsOperationCompleted, userState); }
public void ApplyPasswordSettings(string organizationId, OrganizationPasswordSettings passwordSettings) { Organization.ApplyPasswordSettings(organizationId, passwordSettings); }
/// <remarks/> public void UpdateOrganizationPasswordSettingsAsync(int itemId, OrganizationPasswordSettings settings) { this.UpdateOrganizationPasswordSettingsAsync(itemId, settings, null); }
/// <remarks/> public System.IAsyncResult BeginUpdateOrganizationPasswordSettings(int itemId, OrganizationPasswordSettings settings, System.AsyncCallback callback, object asyncState) { return this.BeginInvoke("UpdateOrganizationPasswordSettings", new object[] { itemId, settings}, callback, asyncState); }
public void UpdateOrganizationPasswordSettings(int itemId, OrganizationPasswordSettings settings) { this.Invoke("UpdateOrganizationPasswordSettings", new object[] { itemId, settings}); }
public void SetUserPolicy(OrganizationPasswordSettings settings) { int minimumUppercase; int minimumNumbers; int minimumSymbols; if (settings.PasswordComplexityEnabled) { minimumUppercase = settings.UppercaseLettersCount; minimumNumbers = settings.NumbersCount; minimumSymbols = settings.SymbolsCount; } else { minimumUppercase = 0; minimumNumbers = 0; minimumSymbols = 0; } PolicyValue = string.Join(";", true, settings.MinimumLength, settings.MaximumLength, minimumUppercase, minimumNumbers, minimumSymbols, true); ToggleControls(); }
public void UpdateOrganizationPasswordSettings(int itemId, OrganizationPasswordSettings settings) { OrganizationController.UpdateOrganizationPasswordSettings(itemId, settings); }