public IActionResult SaveRequiredPasswordCharactersPolicy(Policy policy, int projectId, RequiredPasswordCharactersConfiguration policySettings) { try { savePolicyToProjectFactory.Create().Invoke(projectId, policy, policySettings); Alert(AlertType.Success, "Policy saved correctly."); return(RedirectToAction("GetById", "Projects", new { id = projectId })); } catch (Exception ex) { Alert(AlertType.Warning, ex.Message); return(View("ErrorPage")); } }
public void RequiredPasswordCharactersCheckShouldReturnTrue() { // arrange var configuration1 = new RequiredPasswordCharactersConfiguration { UpperCase = false, Digit = false, Special = true }; var configuration2 = new RequiredPasswordCharactersConfiguration { UpperCase = true, Digit = false, Special = false }; var configuration3 = new RequiredPasswordCharactersConfiguration { UpperCase = false, Digit = true, Special = false }; var configuration4 = new RequiredPasswordCharactersConfiguration { UpperCase = true, Digit = true, Special = true }; // act var checkResult1 = Check.RequiredPasswordCharacters(configuration1, "hello!"); var checkResult2 = Check.RequiredPasswordCharacters(configuration2, "Hello"); var checkResult3 = Check.RequiredPasswordCharacters(configuration3, "h3llo"); var checkResult4 = Check.RequiredPasswordCharacters(configuration4, "H3llo!"); // assert Assert.True(checkResult1); Assert.True(checkResult2); Assert.True(checkResult3); Assert.True(checkResult4); }
public void RequiredPasswordCharactersConfigurationShouldSerializeAndDeserialize() { // arrange var upperCase = false; var digit = true; var special = true; var configuration = new RequiredPasswordCharactersConfiguration { UpperCase = upperCase, Digit = digit, Special = special }; var service = new PolicyJsonConvertService(); // act var serialized = service.Serialize(configuration); var deserialized = (RequiredPasswordCharactersConfiguration)service.Deserialize(Policy.RequiredPasswordCharacters, serialized); // assert Assert.Equal(digit, deserialized.Digit); Assert.Equal(special, deserialized.Special); Assert.Equal(upperCase, deserialized.UpperCase); }
public static bool RequiredPasswordCharacters(RequiredPasswordCharactersConfiguration config, string password) { return(Implication(config.Digit, password.Any(char.IsDigit)) && Implication(config.Special, password.Any(IsSpecial)) && Implication(config.UpperCase, password.Any(char.IsUpper))); }