次に重要な機密保護の項目は特殊権限である。
ユーザー・クラスを*USERとして作成して権限を制約したとしても、
かなりの特殊権限を与えてしまえば、これもやはり機密保護の脆弱性を
与えてしまうことになるので注意を要したい。
*ALLOBJがあると、QSECURITY = 30以上でオブジェクト毎に*PUBLIC*EXCLUDEのようにして一般のユーザーからはアクセスできないようにしていても、*ALLOBJ権限を与えてしまうとオブジェクト・レベルの排他は役に立たなくなってしまう。*JOBCTL権限が必要である。*SPLCTLがなくても可能である。*SPLCTLがないと他のユーザーが作成したスプールは参照することはできない。*USERに*SPLCTL権限をうかつに与えてしまうと*USERでもスプールにある給与明細表や決算書を見れてしまうことになる。*USERに特殊権限*SPLCTLは与えないほうがよいのである。上記以外にも特殊権限として*AUDIT,*SERVICEなどがあるが、
下記のサイトを参考にして欲しい。
https://www.ibm.com/support/knowledgecenter/ja/ssw_ibm_i_73/rzarl/rzarlseclvl.htm
最後に非常にわかりにくい I5/OS のメッセージについて解説する。
CRTUSRPRF(ユーザー・プロフィールの作成)コマンドを使って、
ユーザー・プロフィールを作成するときに特殊権限を追加して作成することは
珍しくないというか一般的なことである。
CRTUSRPRF USRPRF(CTR) SPCAUT(*ALLOBJ *JOBCTL) AUT(*ALL)
ユーザー・クラスおよび特殊権限がシステム提供値と一致していない
ユーザー・プロファイル CTR が作成された。
このように作成するがところで「ユーザー・クラスおよび特殊権限が、
システム提供値と一致していない」というメッセージはなんだろう?
これはユーザー・クラス (*USER) のユーザーを作成しているのに
*ALLOBJや*JOBCTLという特殊権限が追加されて本来の*USERからは
オーバーしている、という警告メッセージというか、
お決まりのメッセージなのであるが、このメッセージを初めて見る人にとっては、
驚いて何か不都合なエラーを生じてしまったのではないかと心配してしまうが
そうではない。
全く当然のメッセージであって何の心配も要らないのだが、
このわかりにくいメッセージは操作する人を不安にするのに十分な
印象を与えてしまうのであえて紹介したような次第である。