有了Debug权限就能干坏事?小心了,你的一举一动尽在系统监控中
大家新年好! Jerry祝大家身體健康,鼠年大吉!
本文是鼠年第一篇文章,也是汪子熙公眾號第200篇原創文章。
昨天Jerry在家度過了有生以來年味最淡的一個除夕夜。為響應政府和專家的號召,沒有走親訪友,宅在家中,與親人和代碼一起,度過了一個平靜的除夕夜。
所謂“平平淡淡才是福”,讓我們共同祈禱,期盼這場全人類的災難早點結束。
之前Jerry也閱讀過一些介紹如何通過ABAP單步調試繞過SAP標準權限檢查“小技巧”的文章,比如說在調試器里修改權限檢查語句AUTHORITY-CHECK的返回值sy-subrc, 或者干脆用調試器的“跳轉到某條語句”這一功能,直接繞過權限檢查語句。
雖然說在SAP生產系統里,按照慣例,普通的業務用戶絕對不會有調試的權限,更別說在調試器里修改變量的值了,但如果是在開發系統里,直接在調試器里修改變量的值,或是跳過某些語句的執行,真的就能夠不會被別人發現么?
答案是否定的。
看個例子:
我在ABAP調試器里把變量的值從12改成123,回車使更改生效。
然后事務碼SM21,打開系統日志查看工具:
我剛才在ABAP調試器里修改變量值的行為,赫然在案:
再試試在ABAP調試器里,使用“Goto statement”,直接跳過某些語句:
這一行為也逃不過系統日志的記錄,甚至連我從第幾行ABAP代碼跳轉到另外的第幾行,都清晰地記錄下來了。
Terminal字段即在調試器里執行了語句跳轉的用戶使用的終端機器ID,每臺連接到ABAP Netweaver服務器上的機器都具有一個唯一的終端ID.
這些系統日志文件存儲的具體位置在哪?
點擊Display Components,在Component trace面板里,能有選擇性地查看某種類別的系統日志:
其中/usr/sap/AG3/D56開頭的路徑,即是我當前登錄的Application Server,ID為AG3,instance numeber 為56這臺服務器的工作目錄:
使用事務碼AL11沿著這條路徑找下去,在work子目錄就能發現這些系統日志文件:
普通ABAP用戶沒有操作系統的訪問權限,也就不能對這些系統日志文件進行任何寫操作。
總而言之,一旦你使用單步調試的方法繞過一些權限檢查或者執行其他危險操作時,這些行為立即記錄在系統日志里,普通用戶無法刪除這些日志文件。
SAP系統的權限控制體系設計得非常完善,當大家在實際工作中發現自己缺少某個事務的執行權限時,請按照SAP權限管控的標準流程去解決問題。通過ABAP單步調試繞過權限檢查,在任何情況下都絕非SAP推薦的解決方式。即便是大家想在開發系統上這樣做的之前,也務必三思而后行。
感謝閱讀,祝大家春節愉快。
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
總結
以上是生活随笔為你收集整理的有了Debug权限就能干坏事?小心了,你的一举一动尽在系统监控中的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 美柚怎么只看楼主 美柚只看楼主设置方法
- 下一篇: 彩票专家免费预测汇总 彩票预测最准十专家