概要
■ビュー名:QSYS2.USER_INFO_BASIC
■カテゴリ:セキュリティサービス
■サポート:IBM i 7.3 SF99703 Level 24以降
■参照URL(IBM i 7.5):https://www.ibm.com/docs/ja/i/7.5?topic=services-user-info-basic-view
USER_INFOビューと同様にユーザー・プロファイルに関する情報を返します。ただし返す結果が少ない、かつ、処理が速い(処理負荷が低い)という差異があります。
使用例1
以下は上記参照URL記載のサンプルです。*ALLOBJ権限を持つユーザーをリストします。
SELECT * FROM QSYS2.USER_INFO_BASIC
WHERE SPECIAL_AUTHORITIES LIKE '%*ALLOBJ%';
結果例は、、、
上図では見えませんが、*SECOFRクラスのユーザーがリストされているので*ALLOBJ権限を所有しています。
使用例2
USER_INFOビューと同じSQLを流して直近でログインに失敗しているユーザー(不正アクセスその他が考えられる)をリストしてみると、
SELECT * FROM QSYS2.USER_INFO_BASIC
WHERE SIGN_ON_ATTEMPTS_NOT_VALID > 0
同様にSign On Attempts Not Valid が0以外のユーザーがリストされます。
そして、処理速度は体感上でも QSYS2.USER_INFOビューよりも速いです。
USER_INFOビューでは1秒ちょっと、USER_INFO_BASICだと0.5ミリ秒以下、くらいな感じです。(体感値です)
テスト機のIBM i 7.5のコア数は
1.16コア(POWER10)ですね。
それよりシステムASP% 97.18% って・・・w ふつう止まるでしょ♪(IBM i は止まらないんですね。99.9%で稼働中というのも見たことがありますw)
User_Info ビューと User_Info_Basic ビューの結果カラムをくらべてみた
何が処理速度に影響しているか調べてみます。それがきっと処理負荷の高い取得データという事だと思います。
以下の6つのカラムに差がありました。
USER_OWNERの取得に時間(負荷)がかかっているのかな、と推察しました。