Skip to content

Commit d557673

Browse files
committed
add doc on password-related validation rules
1 parent 9d47df5 commit d557673

File tree

1 file changed

+46
-5
lines changed
  • security/form-validation/built-in-validation-rules

1 file changed

+46
-5
lines changed

security/form-validation/built-in-validation-rules/index.md

Lines changed: 46 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,9 @@ This page lists all available built-in validation rules that Fano Framework prov
3333
| [IPv6](#tipv6validator) | [MAC](#tmacaddrvalidator) | [JSON](#tjsonvalidator) |
3434
| [Phone](#tphonevalidator) | [Start With](#tstartwithvalidator) | [End With](#tendwithvalidator) |
3535
| [Latitude](#tlatitudevalidator) | [Longitude](#tlongitudevalidator) | [Between](#tbetweenvalidator) |
36-
| [Less or equal than](#tlessorequalthanvalidator) | [Greater or equal than](#tgreaterorequalthanvalidator) | - |
36+
| [Less or equal than](#tlessorequalthanvalidator) | [Greater or equal than](#tgreaterorequalthanvalidator) | [At least one alpha](#tatleastonealphavalidator) |
37+
| [At least one lower alpha](#tatleastoneloweralphavalidator) | [At least one upper alpha](#tatleastoneupperalphavalidator) | [At least one digit](#tatleastonedigitvalidator) |
38+
| [At least one symbol](#tatleastonesymbolvalidator) | [Mixed capitalization](#tmixedcapsvalidator) | - |
3739

3840
## Field availability
3941

@@ -693,6 +695,45 @@ rule := TAntivirusValidator.create(TNullAv.create());
693695
```
694696
This is provided to bypass antivirus scanning.
695697

698+
## Password-related validation
699+
700+
### <a name="tatleastonealphavalidator"></a>TAtLeastOneAlphaValidator
701+
702+
Validate string contains at least one alphabet character.
703+
704+
### <a name="tatleastoneloweralphavalidator"></a>TAtLeastOneLowerAlphaValidator
705+
706+
Validate string contains at least one lower case alphabet character.
707+
708+
### <a name="tatleastoneupperalphavalidator"></a>TAtLeastOneUpperAlphaValidator
709+
710+
Validate string contains at least one upper case alphabet character.
711+
712+
### <a name="tatleastonedigitvalidator"></a>TAtLeastOneDigitValidator
713+
714+
Validate string contains at least one digit character.
715+
716+
### <a name="tatleastonesymbolvalidator"></a>TAtLeastOneSymbolValidator
717+
718+
Validate string contains at least one symbol character (e.g., #$@!%^&*+-_ etc).
719+
720+
### <a name="tmixedcapsvalidator"></a>TMixedCapsValidator
721+
722+
Validate string contains at least one lower case and one upper case alphabet characters.
723+
724+
For example, following validation rules ensure that password is mandatory with minimum length of 8 characters that contains at least one lower case letter,
725+
one upper case letter, one digit character and one symbol character.
726+
```
727+
passwordRule := TCompositeValidator.create([
728+
TRequiredValidator.create(),
729+
TMinLengthValidator.create(8),
730+
TAtLeastOneAlphaValidator.create(TRegex.create()),
731+
TAtLeastOneDigitValidator.create(TRegex.create()),
732+
TAtLeastOneSymbolValidator.create(TRegex.create()),
733+
TMixedCapsValidator.create(TRegex.create())
734+
]);
735+
```
736+
696737
## Miscellaneous
697738

698739
### <a name="tcompositevalidator"></a>TCompositeValidator
@@ -704,7 +745,7 @@ rule := TCompositeValidator.create([
704745
TRequiredValidator.create(),
705746
TAlphaNumDashValidator.create(TRegex.create()),
706747
TMinLengthValidator.create(8),
707-
TMaxLengthValidator.create(10),
748+
TMaxLengthValidator.create(10)
708749
]);
709750
```
710751

@@ -719,7 +760,7 @@ rule := TCollectiveValidator.create([
719760
TRequiredValidator.create(),
720761
TAlphaNumDashValidator.create(TRegex.create()),
721762
TMinLengthValidator.create(8),
722-
TMaxLengthValidator.create(10),
763+
TMaxLengthValidator.create(10)
723764
]);
724765
```
725766

@@ -732,7 +773,7 @@ rule := TOrValidator.create([
732773
TRequiredValidator.create(),
733774
TAlphaNumDashValidator.create(TRegex.create()),
734775
TMinLengthValidator.create(8),
735-
TMaxLengthValidator.create(10),
776+
TMaxLengthValidator.create(10)
736777
]);
737778
```
738779

@@ -749,7 +790,7 @@ rule := TAndValidator.create([
749790
TRequiredValidator.create(),
750791
TAlphaNumDashValidator.create(TRegex.create()),
751792
TMinLengthValidator.create(8),
752-
TMaxLengthValidator.create(10),
793+
TMaxLengthValidator.create(10)
753794
]);
754795
```
755796

0 commit comments

Comments
 (0)