Java编码指南:编写安全可靠程序的75条建议
- 资料大王PDF
-
0 次阅读
-
0 次下载
-
2024-11-03 22:54:51
微信
赏
支付宝
文档简介:
目
录
封面
扉页
版权
版权声明
译者简介
序
前言
致谢
作者介绍
第1章 安全
指南1:限制敏感数据的生命周期
指南2:不要在客户端存储未经加密的敏感数据
指南3:为敏感可变类提供不可修改的包装器
指南4:确保安全敏感方法被调用时参数经过验证
指南5:防止任意文件上传
指南6:正确地编码或转义输出
指南7:防止代码注入
指南8:防止XPath注入
指南9:防止LDAP注入
指南10:不要使用clone()方法来复制不可信的方法参数
指南11:不要使用Object.equals()来比较密钥
指南12:不要使用不安全的弱加密算法
指南13:使用散列函数存储密码
指南14:确保SecureRandom正确地选择随机数种子
指南15:不要依赖可以被不可信代码覆盖的方法
指南16:避免授予过多特权
指南17:最小化特权代码
指南18:不要将使用降低安全性检查的方法暴露给不可信代码
指南19:对细粒度的安全定义自定义安全权限
指南20:使用安全管理器创建一个安全的沙盒
指南21:不要让不可信代码误用回调方法的特权
第2章 防御式编程
指南22:最小化变量的作用域
指南23:最小化@SuppressWarnings注解的作用域
指南24:最小化类及其成员的可访问性
指南25:文档化代码的线程安全性
指南26:为方法的结果值提供反馈
指南27:使用多个文件属性识别文件
指南28:不要赋予枚举常量的序号任何特殊意义
指南29:注意数字提升行为
指南30:对可变参数的类型做编译时类型检查
指南31:不要把其值在以后版本里可能会发生变化的常量设置
为public final
指南32:避免包之间的循环依赖
指南33:使用用户自定义的异常而非宽泛的异常类型
指南34:尽量从系统错误中优雅恢复
指南35:发布接口前请谨慎设计
指南36:编写对垃圾收集机制友好的代码
第3章 可靠性
指南37:不要在子作用域里遮蔽或者掩盖标识符
指南38:不要在一个声明里声明多个变量
指南39:在程序逻辑中用有意义的符号常量代表文字值
指南40:在常量定义中恰当地表示相互之间的关系
指南41:对于返回数组或者集合的方法,用返回一个空数组或
者集合来替代返回一个空值
指南42:只在异常的情况下使用异常
指南43:使用try-with-resources语句安全处理可关闭的资源
指南44:不要使用断言来验证不存在的运行时错误
指南45:在条件表达式中,第二个和第三个操作数应使用相同
类型
指南46:不要序列化直接指向系统资源的句柄
指南47:更倾向于使用迭代器而不是列举
指南48:对于短生存周期、......
评论
发表评论