OBJECT_PRIVILEGES 表格函數
OBJECT_PRIVILEGES 表格函數會針對每一個已授權指定物件的使用者傳回一列,以及其關聯物件和資料權限。
傳回的資訊與透過「顯示物件權限 (DSPOBJAUT)」CL 指令所提供的資訊類似。
授權: 當至少符合下列其中一項時,會針對物件傳回所有授權使用者:
- 物件是 *AUTL ,且呼叫者對物件具有 *AUTLMGT 權限。
- 物件不是 *AUTL ,且呼叫程式對物件具有 *OBJMGT 權限。
- 呼叫者是物件的擁有者。
- 呼叫者已獲得 QIBM_DB_SECADM 函數用法 ID 的授權。
綱目為 QSYS2。
- 系統物件綱目
- 字元或圖形字串表示式,識別包含 system-object-name的檔案庫。
- 系統物件名稱
- 識別物件的字元或圖形字串表示式。
- 物件類型
- 指定系統物件類型 system-object-name的字元或圖形字串表示式。
函數的結果是一個表格,其中包含下列表格中所顯示格式的列。 所有直欄都可為空值。
| 直欄名稱 | 資料類型 | 說明 |
|---|---|---|
| 授權 _ 使用者 | VARCHAR (10) | 使用者設定檔名稱。 可包含下列特殊值。
|
| OBJECT_AUTHORITY | VARCHAR (12) | 使用者對物件的權限。 包含下列其中一個特殊值:
|
| 授權 _ 清單 | VARCHAR (10) | 如果物件受到授權清單保護,則為授權清單的名稱。 如果物件未受授權清單保護,則包含空值。 |
| PRIMARY_GROUP | VARCHAR (10) | 作為物件主要群組的使用者。 如果沒有物件的主群組,則傳回空值。 |
| OWNER | VARCHAR (10) | 擁有物件的使用者設定檔。 |
| AUTHORIZATION_LIST_MANAGEMENT | VARCHAR (3) | AUTHORIZATION_USER 的授權清單管理權限。
|
| OBJECT_OWNER | VARCHAR (3) | 指出此列的 AUTHORIZATION_USER 是否也是物件的 OWNER。
|
| OBJECT_OPERATIONAL | VARCHAR (3) | 指出 AUTHORIZATION_USER 的物件作業權限。
|
| 物件管理 | VARCHAR (3) | AUTHORIZATION_USER 的物件管理權限。
|
| OBJECT_EXISTENCE | VARCHAR (3) | AUTHORIZATION_USER 的物件存在權限。
|
| OBJECT_ALTER | VARCHAR (3) | AUTHORIZATION_USER 的物件變更權限。
|
| OBJECT_REFERENCE | VARCHAR (3) | AUTHORIZATION_USER 的物件參照權限。
|
| DATA_READ | VARCHAR (3) | AUTHORIZATION_USER 的資料讀取權限。
|
| 資料 _ 新增 | VARCHAR (3) | AUTHORIZATION_USER 的資料新增權限。
|
| 資料 _ 更新 | VARCHAR (3) | AUTHORIZATION_USER 的資料更新權限。
|
| 資料 _ 刪除 | VARCHAR (3) | AUTHORIZATION_USER 的資料刪除權限。
|
| DATA_EXECUTE | VARCHAR (3) | AUTHORIZATION_USER 的資料執行權限。
|
範例
傳回檔案 APPLIB/XX_ENCODE_CASE_ONE employee 的權限資訊。
SELECT *
FROM TABLE(QSYS2.OBJECT_PRIVILEGES('APPLIB', 'EMPLOYEE', '*FILE'));
