阿里巴巴編碼規約學習之安全規約

2021-10-10 09:13:50 字數 974 閱讀 5663

乙個成熟的系統都是要專門的鑑權機制的,比如微服務中的鑑權元件,或者單體應用中的***也可以起到類似的作用,市面上的鑑權手段多樣,這裡主要是說明許可權控制的重要性。

在設計的時候,就要考慮到如果有別有用心的使用者,得到了其他使用者的訪問請求,加以修改,如果沒有許可權控制的話,是容易出大事的

手機號、身份證號等都需要脫敏,當然也和具體的業務場景有關

比如mybatis中不能使用$,使用#等引數化語句,普通使用者不給予ddl語句的許可權等,都是專案上常用的手段

防止sql注入的解析與手段

第一點沒啥好說的,任何查詢都得分頁,如果pagesize過大那就相當於不分頁了

第二點我覺得是sql設計時候就需要注意一下

第三點其實也是許可權的問題,控制好url的許可權,就不會出現隨意重定向的情況了

第四點上面說過

第五點,使用反序列化本身並不會產生問題。當使用者(攻擊者)可以控制被反序列化的資料時就出現問題了。常見的就是通過反射和反序列化來破壞單例的設計初衷

csrf攻擊原理與幾種防範方法

csrf攻擊與防禦

限流的重要性

阿里巴巴編碼規約學習之異常日誌

異常一定要處理,不能捕獲以後,之列印出來什麼都不管。比如某個業務層的方法中,對乙個異常做了捕獲,catch塊僅僅是列印出了異常,這種情況下異常是不容易被發現的,也就是異常被吞掉了 如果這個時候上層方法有事務註解,甚至會和spring的事務衝突 專案中異常的幾個注意事項 空指標是乙個很常見的異常了 這...

阿里巴巴編碼規約學習之MYSQL資料庫

這個怎麼說呢,其實也有用y和n的,甚至有用success的,感覺有點亂,有個統一的標準還是好事,起碼乙個產品或者乙個系列的東西應該在這一點上是統一的 雖然說這個大小寫敏感的配置是可以修改的,但還是統一小寫比較好,不像oracle 注意有些 複數 表名其實是單詞的本義,並不是複數 之前也有用欄位名 u...

阿里巴巴開發規約之命名風格

我下邊總結的只是我自己平時需要注意的 1.userdo而不是userdo 2.方法名,成員變數名,區域性變數名,引數名統一用lowercamelcase駝峰標識 3.常量全部大寫用下劃線隔開,並且力求語意完整,不論多長,4.boolean型別的常量不要加是字首,否則容易引起框架異常,5.為了 自解釋...