2011.03.23
 

パスワードの大文字要件を作成する

Question

パスワードの期限満了時や (CHGPWD) 画面のリセット時に、ユーザーのパスワードに大文字を必要とするパスワード検証プログラムを設定しようとしています。また、パスワードに大文字がない場合に、エラー・メッセージを画面下部に表示させたいとも考えています。

大文字のチェックにどのようなコードを使用するのかご存知でしょうか?API はすでに設定済みです。また、本来エラー・メッセージが画面下部に表示される場合、パスワード検証プログラムでエラーが発生したことを示すメッセージを受信します。SNDPGMMSG コマンドを使用してそのまま作業を続けるために、正しいエラー・メッセージを受信するためのヒントは何かありませんか。

Answer

ユーザーのパスワードの少なくとも 1 つの大文字が存在することを検証する出口プログラム・コードを以下に示します。

D pwd       s         10a
D NoUppercase  s          n

/free
  NoUpperCase = (pwd = lower(pwd));

  If NoUpperCase;
   // process error condition
  EndIf;

 /end-free
P lower      B
D lower      PI       10a
D pwd               10a

D uc    s  26a inz('ABCDEFGHIJKLMNOPQRSTUVWXYZ')
D lc     s  26a inz('abcedfghigklmnopqrstuvwxyz')
D mypwd s  10a
 /free
  mypwd = %Xlate(uc : lc : pwd );
  return mypwd;
 /end-free
P lower        E

ページトップ

ボタン