技術摘要:如何編寫安全的Java代碼

發表于:2007-04-27來源:作者:點擊數: 標簽:安全java摘要編寫如何
摘要:本文是來自Sun官方站點的一篇關于如何編寫 安全 的 Java 代碼的指南, 開發 者在編寫一般代碼時,可以參照本文的指南 靜態字段 縮小作用域 公共方法和字段 保護包 equals方法 如果可能使對象不可改變 不要返回指向包含敏感數據的內部數組的引用 不要直接

  摘要:本文是來自Sun官方站點的一篇關于如何編寫安全Java代碼的指南,開發者在編寫一般代碼時,可以參照本文的指南

  • 靜態字段

  • 縮小作用域

  • 公共方法和字段

  • 保護包

  • equals方法

  • 如果可能使對象不可改變

  • 不要返回指向包含敏感數據的內部數組的引用

  • 不要直接存儲用戶提供的數組

  • 序列化

  • 原生函數

  • 清除敏感信息

  靜態字段

  • 避免使用非final的公共靜態變量

  應盡可能地避免使用非final公共靜態變量,因為無法判斷代碼有無權限改變這些變量值。

  • 一般地,應謹慎使用易變的靜態狀態,因為這可能導致設想中相互獨立的子系統之間發生不可預知的交互。

  縮小作用域

  作為一個慣例,盡可能縮小方法和字段的作用域。檢查包訪問權限的成員能否改成私有的,保護類型的成員可否改成包訪問權限的或者私有的,等等。

  公共方法/字段

  避免使用公共變量,而是使用訪問器方法訪問這些變量。用這種方式,如果需要,可能增加集中安全控制。

  對于任何公共方法,如果它們能夠訪問或修改任何敏感內部狀態,務必使它們包含安全控制。

  參考如下代碼段,該代碼段中不可信任代碼可能設置TimeZone的值:

以下是引用片段:
  private static TimeZone defaultZone = null;
  public static synchronized void setDefault(TimeZone zone)
  {
  defaultZone = zone;
  }

共3頁。 1 2 3 :

原文轉自:http://www.anti-gravitydesign.com

評論列表(網友評論僅供網友表達個人看法,并不表明本站同意其觀點或證實其描述)
...
国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97