[ 登录 ][ 注册 ] 天极传媒: 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
您现在的位置: IT专家网 > Web服务子站 > Java技术

编写安全的Java代码

作者: yongbing ,  出处:IT专家网论坛, 责任编辑: 包春林, 
2008-05-16 04:00
  本文是来自Sun官方站点的一篇关于如何编写安全的Java代码的指南,开发者在编写一般代码时,可以参照本文的指南

  • 静态字段

  • 缩小作用

  • 公共方法和字段

  • 保护包

  • equals方法

  • 如果可能使对象不可改变

  • 不要返回指向包含敏感数据的内部数组的引用

  • 不要直接存储用户提供的数组

  • 序列化

  • 原生函数

  • 清除敏感信息

  静态字段

  • 避免使用非final的公共静态变量

  应尽可能地避免使用非final公共静态变量,因为无法判断代码有无权限改变这些变量值。

  • 一般地,应谨慎使用易变的静态状态,因为这可能导致设想中相互独立的子系统之间发生不可预知的交互。

  缩小作用域

  作为一个惯例,尽可能缩小方法和字段的作用域。检查包访问权限的成员能否改成私有的,保护类型的成员可否改成包访问权限的或者私有的,等等。

  公共方法/字段

  避免使用公共变量,而是使用访问器方法访问这些变量。用这种方式,如果需要,可能增加集中安全控制。

  对于任何公共方法,如果它们能够访问或修改任何敏感内部状态,务必使它们包含安全控制。

  参考如下代码段,该代码段中不可信任代码可能设置TimeZone的值:

  

      private static TimeZone defaultZone = null;

  public static synchronized void setDefault(TimeZone zone)

  {

  defaultZone = zone;

  }

?4?? 1 2 3 4 :
  • 本文关键词:

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。

邮件订阅