一定期間使用していないユーザー・プロファイルを使用不可(*DISABLED)にしたい!
Question
弊社では特定の期間だけオペレーターが利用出来るようにユーザー・プロファイルを作成しています。
継続利用する場合のユーザー・プロファイルは存続し、1ヶ月以上(30日以上)サインオンがされない場合にはユーザー・プロファイルを使用不可にしたいです。
CHGUSRPRFのパスワード満了を30にセットしたところ設定した日付から30日後には満了しますが、サインオンしたからといって満了期間が伸びるわけではないように見受けられます。
何か良い制御方法はありますか。
Answer
CHGUSRPRFについてはご推察のとおりです。
今回はIBM i (AS/400)内のコマンドでご要件を満たせそうなものが用意されています。
そのコマンドが"プロファイル活動の分析 (ANZPRFACT)"です。
実際にコマンドラインに入力してF4キーを押してプロンプトを確認してみましょう。
おや? だいぶシンプルですね。
しかしご安心ください、後ろでは意外にしっかりいろいろ動いているんです。
ANZPRFACT INACDAYS (30)
を実行します。
そうするとジョブ・スケジュールに「QSECIDL1」のジョブがスケジュール登録されます。
このジョブでは毎日01:00にユーザー・プロファイルの稼働状況をチェックし、設定された日付を超えたプロファイルを非活動状態にします。
(チェックジョブが動作する時間を変更したい場合には"2=変更"からスケジュール時刻を変更してください。)
ちなみに当スケジュールが登録されるのは、実数値1~366を指定した場合のみです。
ANZPRFACT INACDAYS(*NOMAX)でコマンド実行した際は、登録されている「QSECIDL1」ジョブ・スケジュールは削除されます。
また、オペレーターに提供しているプロファイルはチェックの対象にしたいが、お客様が作成された管理者ユーザーや、そのほかチェックの対象にしたくないプロファイルも存在するでしょう。
活動プロファイル・リスト変更(CHGACTPRFL)コマンドを用いて、チェック対象から外すリストに追加または除去ができます。
こちらもコマンドのパラメーターは2つでシンプルですね。
ユーザー・プロファイルを指定して、処置*ADD(チェックしないリストに追加)、*REMOVE(チェックしないリストから除去)を指定することができます。
DSPACTPRFLコマンドで現在リスト追加されているプロファイルを確認することもできます。
では試しにCHGACTPRFL USRPRF(USER1) を実行しDSPACTPRFLにてリストを確認しましょう。
追加されていることが確認できましたね。
このプロファイルをリストから外す場合は
CHGACTPRFL USRPRF(USER1) ACTION(*REMOVE)
を実行します。
なお、リストに入れなくてもシステムの動作に必要なプロファイルは非活動状態とみなされることはありません。
参考:プロファイル活動の分析 (ANZPRFACT)
https://www.ibm.com/docs/ja/i/7.5?topic=ssw_ibm_i_75/cl/anzprfact.html
ANZPRFACTによって非活動化されたプロファイルでサインオンしようとすると、ANZPRFACTを実行したユーザーのメッセージキューに、どのプロファイルがアクセスしようとしたかメッセージが残ります。
そのユーザーの接続の必要有無を管理者にてご確認ください。
by 大熊猫橋