コマンド

25. 表示させたくないパスワードを定義するには ?

コマンドのキーワードとしてパスワードを入力させたい場合があるがパスワードはやはり
入力中にも表示されたのでは隣の人に見られてしまうし、入力後にもコマンド・ログとして
ヒストリーに残ってしまったのでは機密保護の点で大いに問題となってしまう。
例えば、次のようなコマンド・ログが残ってしまう。

コマンド・ログが残ってしまう

   TESTPASS USER(KEIRI) PASSWRD(KR1220)

これを防止するには

   PARM       KWD(PASSWRD) TYPE(*CHAR) LEN(10) +
   INLPMTLEN(*PWD) PROMPT(' パスワード ')

のように INLPMTLEN(*PWD) を指定すればよい。
ログには次のようになってパスワードは残らない。

コマンド・ログが残らない

   TESTPASS USER(KEIRI) PASSWRD()

さらに入力中も表示させたくないのであれば、

   PARM       KWD(PASSWRD) TYPE(*CHAR) LEN(10) +
   DSPINPUT(*NO) INLPMTLEN(*PWD) +
   PROMPT(' パスワード ')

のようにして DSPINPUT(*NO) を指定すれば入力はできるが入力している文字は表示されないので、
入力中に他者から読み取られることを防止することができる。

ところで、このようなテクニックを私はどのようにして知ったのだろうか ?
答えはこのサイトの ToolsRTVCMDSRC によって OS コマンドの CHGUSRPRF によって
パスワードがどのように IBM が定義しているのかを調べただけである。

このテクニックは Spoolライター Ver5.0CVTSPLF コマンドの PCサーバーへの
ログイン・パスワードに応用されている。