2019-03-23 SAP ABAP 權(quán)限檢查

1. 權(quán)限要求

授權(quán)對(duì)象 字段 檢查值
M_MSED_WMB WERKS 物料憑證:工廠
AUTHORITY-CHECK OBJECT 'M_MSED_WMB'
            ID 'WERKS' FIELD p_werks.  "p_werks為鍵入值
  IF sy-subrc <> 0.
*    MESSAGE e044(zmsgmm01) WITH p_werks.
  ENDIF.

9)、檢查ABAP/4程序用戶的權(quán)限
???????與使用邏輯數(shù)據(jù)庫讀取數(shù)據(jù)不同,運(yùn)行時(shí)在ABAP/4程序中使用SQL語句處理數(shù)據(jù)不會(huì)觸發(fā)權(quán)限檢查(參見《邏輯數(shù)據(jù)庫的優(yōu)點(diǎn)》)。因?yàn)殚_放式SQL和自身的SQL語句允許無限制地訪問所有數(shù)據(jù)庫表,所以這將帶來問題。
???????不是要為所有用戶授予在ABAP/4程序中使用SQL語句訪問所有數(shù)據(jù)的權(quán)限。但是,發(fā)布程序之后,所有具有該程序使用權(quán)限的用戶都能啟動(dòng)它。所以,作為編寫SQL報(bào)表程序的程序員有責(zé)任檢查調(diào)用該程序的用戶是否有權(quán)訪問將在其中處理的數(shù)據(jù)。

要在ABAP/4程序中檢查用戶權(quán)限,請(qǐng)使用AUTHORITY-CHECK語句,如下所示:

語法

**AUTHORITY-CHECK OBJECT '<object>'
 ID '<name1>' FIELD <f1>
 ID '<name2>' FIELD <f2>
 ...........
 ID '<name10>' FIELD <f10>.

<object>是即將檢查的授權(quán)對(duì)象的名稱。
必須在ID后列出在<object>中定義的所有授權(quán)字段的名稱(<name1>,<name2>....)。
必須在<f1>,<f2>....中為即將檢查的權(quán)限輸入值以作為變量或字母。
然后,該語句將為命名的對(duì)象搜索該用戶的參數(shù)文件,以檢查該用戶是否有<f>中所有值的授權(quán)。
然后SY-SUBRC將設(shè)置為0。可用DUMMY替換.FIELD<f>跳過字段的檢查。
必須檢查系統(tǒng)字段SY-SUBRC中的內(nèi)容來檢查AUTHORITY-CHECK的結(jié)果并作出相應(yīng)的動(dòng)作。
有關(guān)可能的返回代碼值的列表和詳細(xì)信息,請(qǐng)參考AUTHORITY-CHECK的關(guān)鍵字文檔。

假設(shè)存在權(quán)限對(duì)象F_SPFLI和字段ACTVT、NAME及CITY。

SELECT * FROM SPFLI.
 AUTHORITY-CHECK OBJECT 'F_SPFLI'
   ID 'ACTVT' FIELD '02'
   ID 'NAME' FIELD SPFLI-CARRID
   ID 'CITY' DUMMY.
 IF SY-SUBRC NE 0\. 
   EXIT. 
 ENDIF.
ENDSELECT.

如果用戶有下列關(guān)于F_SPFLI的權(quán)限:ACTVT01-03、NAMEAA-LH、CITYnone,
并且SPFLI-CARRID不處于“AA”和“LH”之間,權(quán)限檢查將終止SELECT循環(huán)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • MYSQL 基礎(chǔ)知識(shí) 1 MySQL數(shù)據(jù)庫概要 2 簡(jiǎn)單MySQL環(huán)境 3 數(shù)據(jù)的存儲(chǔ)和獲取 4 MySQL基本操...
    Kingtester閱讀 8,060評(píng)論 5 115
  • ORA-00001: 違反唯一約束條件 (.) 錯(cuò)誤說明:當(dāng)在唯一索引所對(duì)應(yīng)的列上鍵入重復(fù)值時(shí),會(huì)觸發(fā)此異常。 O...
    我想起個(gè)好名字閱讀 5,966評(píng)論 0 9
  • 這回是真的愛上了,古樸典雅的色彩,越看越喜歡,不打稿,對(duì)著畫,毛筆就往宣紙上戳,效果卻是如此的nice!
    小安娘閱讀 396評(píng)論 2 3
  • 題目1: 什么是同源策略 瀏覽器出于安全方面的考慮,只允許與本域下的接口交互。不同源的客戶端腳本在沒有明確授權(quán)的情...
    饑人谷_哈嚕嚕閱讀 207評(píng)論 0 0
  • 蒼山
    無鋏投資與寫作閱讀 173評(píng)論 0 0

友情鏈接更多精彩內(nèi)容