Wartość systemowa Reguły haseł (Password Rules - QPWDRULES) określa reguły, na podstawie których sprawdzana jest prawidłowość konstrukcji hasła. Dla wartości systemowej QPWDRULES można podawać kilka ustawień, z wyjątkiem sytuacji, gdy poda się ustawienie *PWDSYSVAL.
Zmiany dokonane w tej wartości systemowej obowiązują od następnej zmiany hasła.
*PWDSYSVAL | Takie ustawienie powoduje, że wartość systemowa QPWDRULES jest ignorowana, a do sprawdzania poprawności konstrukcji hasła używane są inne wartości systemowe dotyczące haseł. Są to takie wartości, jak: QPWDLMTAJC, QPWDLMTCHR, QPWDLMTREP, QPWDMAXLEN, QPWDMINLEN, QPWDPOSDIF i QPWDQDDGT. Uwaga: Jeśli dla wartości
systemowej QPWDRULES zostanie określona wartość inna niż *PWDSYSVAL, to podczas sprawdzania poprawności nowego hasła wartości
systemowe QPWDLMTAJC, QPWDLMTCHR, QPWDLMTREP, QPWDMAXLEN, QPWDMINLEN, QPWDPOSDIF i QPWDRQDDGT są ignorowane. Co więcej, wszelkie próby zmiany tych wartości systemowych będą ignorowane, dopóki wartość systemowa QPWDRULES będzie mieć wartość inną niż *PWDSYSVAL.
|
*ALLCRTCHG | Egzekwowanie wszystkich reguł budowy hasła zdefiniowanych w wartości systemowej QPWDRULES podczas ustawiania hasła komendą Tworzenie profilu użytkownika (CRTUSRPRF) lub Zmiana profilu użytkownika (CHGUSRPRF). Programy sprawdzające komend CRTUSRPRF i CHGUSRPRF zarejestrowane dla punktu wyjścia QIBM_QSY_VLD_PASSWRD (format VLDP0200) zostaną wywołane w celu weryfikacji hasła po sprawdzeniu wszystkich reguł budowy hasła.
Uwaga: Reguły budowy hasła są zawsze egzekwowane w przypadku używania komendy Zmiana hasła (CHGPWD) i funkcji API Zmiana hasła użytkownika (QSYCHGPW), niezależnie od tego, czy podano wartość *ALLCRTCHG.
|
*CHRLMTAJC | Ta wartość określa, że hasło nie może zawierać 2 lub więcej wystąpień tego samego znaku, umieszczonych obok siebie. Spełnia taką samą funkcję, jak wartość 2 podana dla wartości systemowej QPWDLMTREP. Tej wartości nie można podawać, jeśli podano wartość *CHRLMTREP. Przykłady:
Better.test niepoprawne - tt fix11bugs niepoprawne - 11 @12/A78 poprawne A1234A1234 poprawne |
*CHRLMTREP | Ta wartość określa, że hasło nie może zawierać dwóch lub większej liczby wystąpień tego samego znaku. Spełnia taką samą funkcję, jak wartość 1 podana dla wartości systemowej QPWDLMTREP. Tej wartości nie można podawać, jeśli podano wartość *CHRLMTAJC. Przykłady:
John.Jones niepoprawne - J o n THISONEOK niepoprawne - O @12/A78 poprawne AaCcEeFfGg poprawne |
*DGTLMTAJC | Ta wartość określa, że hasło nie może zawierać dwóch lub większej liczby cyfr umieszczonych obok siebie. Przykłady:
@12/A78 niepoprawne !@#$%a1234. niepoprawne THISONEOK poprawne A1B2C3DE5 poprawne |
*DGTLMTFST | Ta wartość określa, że pierwszym znakiem hasła nie może być cyfra. Jeśli podano wartości *LTRLMTFST i *SPCCHRLMTFST, to nie można podać wartości *DGTLMTFST. Jeśli system działa na poziomie haseł 0 lub 1, to zachowuje się tak, jakby wartość *DGTLMTFST została określona. Przykłady:
16ST-SW-Roch niepoprawne - 1 99BottlesOfBeer niepoprawne - 9 @12/A78 poprawne Allow-this.1 poprawne |
*DGTLMTLST | Ta wartość określa, że ostatnim znakiem hasła nie może być cyfra. Jeśli podano wartości *LTRLMTLST i *SPCCHRLMTLFST, to nie można podać wartości *DGTLMTLST. Przykłady:
John.doe12 niepoprawne - 2 @12/A78 niepoprawne no - 8 THISONEOK poprawne A1234b123. poprawne |
*DGTMAXn | Ta wartość określa maksymalną liczbę cyfr, które mogą znaleźć się w haśle. Parametr n odpowiada liczbie od 0 do 9. Można określić tylko jedną wartość *DGTMAXn. Jeśli podano także wartość *DGTMINn, wartość n określona dla wartości *DGTMAXn musi być większa lub równa wartości n określonej dla wartości *DGTMINn. Przykłady: dla
*DGTMAX2
Q12345678 niepoprawne - o 6 cyfr za dużo 3-2-1->Go niepoprawne - o 1 cyfrę za dużo Rick1 poprawne Ed1-Jeff3 poprawne |
*DGTMINn | Ta wartość określa minimalną liczbę cyfr, które mogą znaleźć się w haśle. Parametr n odpowiada liczbie od 0 do 9. Można określić tylko jedną wartość *DGTMINn. Jeśli podano także wartość *DGTMAXn, wartość n określona dla wartości *DGTMAXn musi być większa lub równa wartości n określonej dla wartości *DGTMINn. Przykłady: dla
*DGTMIN3
Rick1 niepoprawne - tylko 1 cyfra Ed1-Jeff3 niepoprawne - tylko 2 cyfry 3-2-1->Go poprawne Q12345678 poprawne |
*LMTSAMPOS | Na pozycji odpowiadającej pozycji w poprzednim haśle nie mogą być takie same znaki. Ta wartość spełnia taką samą funkcję, jak wartość 2 podana dla wartości systemowej QPWDPOSDIF. Wartość *LMTSAMPOS nie jest egzekwowana w przypadku ustawiania hasła komendą Zmiana profilu użytkownika (CHGUSRPRF) lub Tworzenie profilu użytkownika (CRTUSRPRF), ponieważ nie jest wtedy podawana poprzednia wartość hasła. Wartość jest egzekwowana jedynie w przypadku zmiany hasła za pomocą komendy Zmiana hasła (CHGPWD) lub funkcji API Zmiana hasła użytkownika (QSYCHGPW). Przykłady: dla wartości *LMTSAMPOS, gdy poprzednim hasłem było
Vote4Me:
Victory1 niepoprawne - V na pozycji 1 Mine2love niepoprawne - e na pozycji 4 vOTE-mE poprawne (różnica wielkości liter) Allisgood poprawne |
*LMTPRFNAME | Wartość hasła zapisana wielkimi literami nie może zawierać pełnej nazwy profilu użytkownika na sąsiadujących pozycjach. Przykłady: dla wartości *LMTPRFNAME, gdy nazwa profilu to
JOHNB:
bigJOHNB9 niepoprawne - pozycje 4-8 JohnB78 niepoprawne - pozycje 1-5 J_ohn_B234 poprawne john_b poprawne |
*LTRLMTAJC | Ta wartość określa, że hasło nie może zawierać dwóch lub większej liczby liter umieszczonych obok siebie. Przykłady:
John.Smith niepoprawne THISONEOK niepoprawne @12/A78 poprawne A1234b1234 poprawne |
*LTRLMTFST | Ta wartość określa, że pierwszym znakiem hasła nie może być litera. Jeśli podano wartości *DGTLMTFST i *SPCCHRLMTFST, to nie można podać wartości *LTRLMTFST. Jeśli wartość QPWDLVL w systemie jest równa 0 lub 1, nie można równocześnie określić wartości *LTRLMTFST i *SPCCHRLMTFST. Przykłady:
John.Smith niepoprawne - J THISONEOK niepoprawne - T @12/A78 poprawne 16ST-SW-Roch poprawne |
*LTRLMTLST | Ta wartość określa, że ostatnim znakiem hasła nie może być litera. Jeśli podano wartości *DGTLMTLST i *SPCCHRLMTLST, to nie można podać wartości *LTRLMTLST. Przykłady:
John.Smith niepoprawne - h 1Allow.It niepoprawne - t @12/A78 poprawne (pay*rate) poprawne |
*LTRMAXn | Ta wartość określa maksymalną liczbę liter, które mogą znaleźć się w haśle. Parametr n odpowiada liczbie od 0 do 9. Można określić tylko jedną wartość *LTRMAXn. Jeśli podano także wartość *LTRMINn, wartość n określona dla wartości *LTRMAXn musi być większa lub równa wartości n określonej dla wartości *LTRMINn. Jeśli zostanie również określona wartość *MIXCASEn, liczba n podana dla wartości *LTRMAXn nie może być mniejsza od podwojonej liczby n podanej dla wartości *MIXCASEn. Przykłady: dla *LTRMAX4
THISONEOK niepoprawne - 5 za dużo John.Smith1 niepoprawne - 5 za dużono John1423 poprawne A1b2.#456 poprawne |
*LTRMINn | Ta wartość określa minimalną liczbę liter, które mogą znaleźć się w haśle. Parametr n odpowiada liczbie od 0 do 9. Można określić tylko jedną wartość *LTRMINn. Jeśli zostanie określona również wartość *LTRMAXn, to liczba n podana dla wartości *LTRMAXn nie może być mniejsza od liczby n podanej dla wartości *LTRMINn. Przykłady: dla *LTRMIN2
@12/A78 niepoprawne - tylko 1 litera !@#$%a1234 niepoprawne - tylko 1 litera THISONEOK poprawne A1234b1234 poprawne |
*MAXLENnnn | Ta wartość określa maksymalną liczbę znaków w haśle. Parametr nnn odpowiada liczbie od 1 do 128 (bez zer wiodących). Wartość *MAXLENnnn pełni taką samą funkcję, jak wartość systemowa QPWDMAXLEN. Jeśli wartość QPWDLVL wynosi 0 lub 1, poprawnym zakresem jest od 1 do 10. Jeśli wartość QPWDLVL w systemie wynosi 2 lub 3, poprawnym zakresem jest od 1 do 128. Określona wartość nnn musi być wystarczająco duża na potrzeby wszystkich wartości *MIXCASEn, *DGTMAXn, *LTRMAXn i *SPCCHRMAXn, ograniczeń dotyczących pierwszego i ostatniego znaku oraz wymagań dotyczących znaków znajdujących się obok siebie. Jeśli podano także wartość *MINLENnnn, wartość nnn określona dla wartości *MAXLENnnn musi być większa lub równa wartości nnn określonej dla wartości *MINLENnnn. Jeśli wartość *MAXLENnnn nie zostanie określona, przyjmowana jest wartość *MAXLEN10, w przypadku, gdy dla systemu określono wartość QPWDLVL równą 0 lub 1, lub wartość *MAXLEN128, w przypadku, gdy dla systemu określono wartość QPWDLVL równą 2 lub 3. |
*MINLENnnn | Ta wartość określa minimalną liczbę znaków w haśle. Parametr nnn odpowiada liczbie od 1 do 128 (bez zer wiodących). Jeśli wartość QPWDLVL wynosi 0 lub 1, poprawnym zakresem jest od 1 do 10. Jeśli wartość QPWDLVL w systemie wynosi 2 lub 3, poprawnym zakresem jest od 1 do 128. Jeśli podano także wartość *MAXLENnnn, wartość nnn określona dla wartości *MAXLENnnn musi być większa lub równa wartości nnn określonej dla wartości *MINLENnnn. Jeśli wartość *MINLENnnn nie zostanie określona, przyjmowana jest wartość *MINLEN1. |
*MIXCASEn | Ta wartość określa, że hasło musi zawierać przynajmniej n liter wielkich i n liter małych. Zmienna n jest liczbą od 0 do 9. Wartość jest odrzucana, jeśli dla systemu określono wartość QPWDLVL równą 0 lub 1, ponieważ hasła muszą być zapisywane wielkimi literami. Można określić tylko jedną wartość *MIXCASEn. Jeśli określono wartość *LTRMAXn, wartość n podana dla wartości *LTRMAXn musi być większa lub równa wartości n podanej dla wartości *MIXCASEn pomnożonej przez dwa. Przykłady: dla *MIXCASE2
@12/A78bC niepoprawne - brakuje 1 małej litery THISONEOK niepoprawne - brakuje 2 małych liter ThisIsOkay poprawne Allow-It poprawne |
*REQANY3 | Ta wartość określa, że hasło musi zawierać co najmniej trzy z czterech poniższych typów
znaków:
Gdy system działa z wartością QPWDLVL równą 0 lub 1, wartość *REQANY3 ma taki sam skutek jak jednoczesne określenie wartości *DGTMIN1, *LTRMIN1 i *SPCCHRMIN1. Przykłady:
THISONEOK niepoprawne - tylko 1 typ @12/-78 niepoprawne - tylko 2 typy A1234b1234 poprawne - wielkie, małe, cyfry John.Smith poprawne - wielkie, małe, specjalne peter(21) poprawne - małe, specjalne, cyfry |
*SPCCHRLMTAJC | Ta wartość określa, że hasło nie może zawierać dwóch lub większej liczby znaków specjalnych umieszczonych obok siebie. Znak specjalny to taki, którego symbol Unicode ma właściwość określającą, że nie jest ani literą, ani cyfrą. Przykłady:
Big//Box niepoprawne this->way niepoprawne @12/A78 poprawne John.Smith poprawne |
*SPCCHRLMTFST | Ta wartość określa, że pierwszym znakiem hasła nie może być znak specjalny. Znak specjalny to taki, którego symbol Unicode ma właściwość określającą, że nie jest ani literą, ani cyfrą. Jeśli podano wartości *DGTLMTFST i *LTRLMTFST, to nie można podać wartości *SPCCHRLMTFST. Jeśli wartość QPWDLVL w systemie jest równa 0 lub 1, nie można równocześnie określić wartości *LTRLMTFST i *SPCCHRLMTFST. Przykłady:
(2+2equals4) niepoprawne - ( #fred/#charlie niepoprawne - # 1Good->one12 poprawne A1234b1234 poprawne |
*SPCCHRLMTLST | Ta wartość określa, że ostatnim znakiem hasła nie może być znak specjalny. Znak specjalny to taki, którego symbol Unicode ma właściwość określającą, że nie jest ani literą, ani cyfrą. Jeśli podano wartości *DGTLMTLST i *LTRLMTLST, to nie można podać wartości *SPCCHRLMTLST. Przykłady:
A1234b123. niepoprawne - . >John.Doe< niepoprawne - < THISONEOK poprawne @12/A78 poprawne |
*SPCCHRMAXn | Ta wartość określa maksymalną liczbę znaków specjalnych, które mogą znaleźć się w haśle. Parametr n odpowiada liczbie od 0 do 9. Znak specjalny to taki, którego symbol Unicode ma właściwość określającą, że nie jest ani literą, ani cyfrą. Można określić tylko jedną wartość *SPCCHRMAXn. Jeśli podano wartość *SPCCHRMINn, wartość n określona dla wartości *SPCCHRMAXn musi być większa lub równa wartości n określonej dla wartości *SPCCHRMINn. Przykłady: dla
*SPCCHRMAX3
@12/A78.b# niepoprawne - o 1 za dużo !@#$%a1234 niepoprawne - o 2 za dużo THISONEOK poprawne A1234b-234 poprawne |
*SPCCHRMINn | Ta wartość określa minimalną liczbę znaków specjalnych, które mogą znaleźć się w haśle. Parametr n odpowiada liczbie od 0 do 9. Znak specjalny to taki, którego symbol Unicode ma właściwość określającą, że nie jest ani literą, ani cyfrą. Można określić tylko jedną wartość *SPCCHRMINn. Jeśli podano wartość *SPCCHRMAXn, wartość n określona dla wartości *SPCCHRMAXn musi być większa lub równa wartości n określonej dla wartości *SPCCHRMINn. Przykłady: dla
*SPCCHRMIN4
Su@us.ibm.com niepoprawne - o 1 za mało 123+45=168 niepoprawne - o 2 za mało A.B@us.ibm.com poprawne (24/8=3) poprawne |