はじめに
起動タスクにユーザーIDを割り振る方法を紹介します。「/S proc名,USER=ユーザーID」で起動タスクにユーザーIDを割り振ろうとして失敗した同士たちの参考になれば幸いです。
必要なもの
起動タスクにユーザーIDを割り振るためには以下2種類のRACF資源定義が必要です。
- RACFユーザー・プロファイル
- STARTEDクラスの一般資源プロファイル
RACFユーザー・プロファイルの作成
ADDUSER RACFコマンドを用いてRACFユーザーを定義します。
今回はTEST1というユーザー名をPROTECTED属性で作成します。
ADDUSER TEST1
参考 : ADDUSER (Add user profile)
STARTEDクラスの一般資源プロファイル作成
RDEFINE RACFコマンドを用いてSTARTEDクラスの一般資源プロファイルを作成します。
STARTEDクラスのプロファイル名は「メンバー名.ジョブ名」と第二修飾子まで指定が必要です。
プロファイルへ付与したい属性はSTDATAステートメントに定義します。ユーザーIDはここに定義します。
今回はメンバー名をTESTPROC、ジョブ名は*とし、STDATAへはユーザーID "TEST1"のみを指定します。
RDEFINE STARTED TESTPROC.* STDATA(USER(TEST1))
参考 : RDEFINE (Define general resource profile)
STARTEDクラスの反映
SETROPTS REFRESH RACFコマンドにてSTARTEDクラスへのプロファイル追加を反映させます。
SETROPTS RACLIST(STARTED) REFRESH
参考 : Refreshing SETROPTS RACLIST processing
確認
以上の2手順で起動タスクにユーザーIDの割り当ては完了です。
SDSFパネルで実際に確認してみましょう。
PREFIX=** DEST=(ALL) OWNER=IMP1CTL SORT=JobID/A SYSNAME=
NP JOBNAME JobID Owner Prty Max-RC Queue C Pos SAff ASys Status PrtDest SecLabel TGNum
TESTPROC STC00410 TEST1 1 CC 0000 PRINT 324 LOCAL 2
...
おわりに
起動タスクへのユーザーID割り振り方法を紹介しました。あとは割り振ったユーザーIDに対して権限を付与するなど煮るなり焼くなり好きにしましょう。
この記事が迷えるメインフレーム担当者の一助になれば幸いです。