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