Exemplo n.º 1
0
        /// <summary>
        /// Prepares the validator service for use analysing passwords
        /// </summary>
        /// <param name="passwordRequirements">The parameters to analyse passwords with</param>
        public PasswordValidatorService(IPasswordRequirements passwordRequirements)
        {
            // Prepare tests
            Settings        = passwordRequirements;
            FailureMessages = new List <string>();

            PasswordTests = new List <IPasswordTest>
            {
                new TestLength(passwordRequirements),
                new TestUnique(passwordRequirements),
                new TestRepeat(passwordRequirements),
                new TestPattern(passwordRequirements),
                new TestDigit(passwordRequirements),
                new TestLowercase(passwordRequirements),
                new TestUppercase(passwordRequirements),
                new TestPunctuation(passwordRequirements)
            };

            // Load lists
            LoadBadLists();
        }
        /// <summary>
        /// Prepares test for use and allows using custom pattern
        /// </summary>
        /// <param name="passwordRequirements">Object containing current settings</param>
        /// <param name="map">An optional custom pattern mapping to check</param>
        public TestPattern(IPasswordRequirements passwordRequirements, List <PatternMapItem> map = null)
        {
            Settings = passwordRequirements;

            PatternMap = map ?? PatternMapService.QwertyMap;
        }
Exemplo n.º 3
0
 public TestUnique(IPasswordRequirements passwordRequirements)
 {
     Settings = passwordRequirements;
 }
 /// <summary>
 /// Prepares test for use
 /// </summary>
 /// <param name="passwordRequirements">Object containing current settings</param>
 public TestLowercase(IPasswordRequirements passwordRequirements)
 {
     Settings = passwordRequirements;
 }
Exemplo n.º 5
0
 public TestDigit(IPasswordRequirements passwordRequirements)
 {
     Settings = passwordRequirements;
 }
Exemplo n.º 6
0
 public TestLength(IPasswordRequirements passwordRequirements)
 {
     Settings = passwordRequirements;
 }
Exemplo n.º 7
0
 /// <summary>
 /// Prepares test for use
 /// </summary>
 /// <param name="passwordRequirements">Object containing current settings</param>
 public TestRepeat(IPasswordRequirements passwordRequirements)
 {
     Settings = passwordRequirements;
 }
Exemplo n.º 8
0
 public TestPunctuation(IPasswordRequirements passwordRequirements)
 {
     Settings = passwordRequirements;
 }
 /// <summary>
 /// Prepares test for use
 /// </summary>
 /// <param name="passwordRequirements">Object containing current settings</param>
 public TestEntropy(IPasswordRequirements passwordRequirements)
 {
     Settings = passwordRequirements;
 }