《Java安全编码标准》一1.10 类装载器

简介: 本节书摘来自华章出版社《Java安全编码标准》一书中的第1章,第1.10节,作者 (美)Fred Long,Dhruv Mohindra,Robert C. Seacord,Dean F. Sutherland,David Svoboda,更多章节内容可以访问云栖社区“华章计算机”公众号查看

1.10 类装载器

java.lang.ClassLoader类及其子类可以让新代码动态地加载到JVM中。每一个类都提供了装载它的ClassLoader的链接。此外,每一个类装载器类都有一个装载它的父类装载器,类装载器的顶端称为根类装载器。因为ClassLoader?被设计成抽象的,所以它不能被实例化。所有的继承自SecureClassLoader的类装载器都继承自ClassLoader。SecureClassLoader对其方法进行的权限安全检查,在它的子类中也会同样进行。SecureClassLoader定义了getPermissions()方法,通过这个方法可以指明被类装载器装载的类所具有的权限。通过这种方式提供的保护机制,可以限制非受信的代码装载额外的类。
遗憾的是,被不同的类装载器载入的类总是不同的。为了那些非受信代码的安全性,package-private(即默认的)访问权限可以认为和private访问权限是一样的。

相关文章
|
4天前
|
Java 关系型数据库 MySQL
Elasticsearch【问题记录 01】启动服务&停止服务的2类方法【及 java.nio.file.AccessDeniedException: xx/pid 问题解决】(含shell脚本文件)
【4月更文挑战第12天】Elasticsearch【问题记录 01】启动服务&停止服务的2类方法【及 java.nio.file.AccessDeniedException: xx/pid 问题解决】(含shell脚本文件)
28 3
|
1天前
|
安全 Java 程序员
|
2天前
|
Java
Java Class类
Java Class类
8 0
|
8天前
|
Java 编译器
Java Character 类
4月更文挑战第13天
|
8天前
|
存储 安全 Java
Java中的容器,线程安全和线程不安全
Java中的容器,线程安全和线程不安全
15 1
|
9天前
|
存储 Java
Java基础教程(7)-Java中的面向对象和类
【4月更文挑战第7天】Java是面向对象编程(OOP)语言,强调将事务抽象成对象。面向对象与面向过程的区别在于,前者通过对象间的交互解决问题,后者按步骤顺序执行。类是对象的模板,对象是类的实例。创建类使用`class`关键字,对象通过`new`运算符动态分配内存。方法包括构造函数和一般方法,构造函数用于对象初始化,一般方法处理逻辑。方法可以有0个或多个参数,可变参数用`类型...`定义。`this`关键字用于访问当前对象的属性。
|
10天前
|
SQL 安全 Java
Java安全编程:防范网络攻击与漏洞
【4月更文挑战第15天】本文强调了Java安全编程的重要性,包括提高系统安全性、降低维护成本和提升用户体验。针对网络攻击和漏洞,提出了防范措施:使用PreparedStatement防SQL注入,过滤和转义用户输入抵御XSS攻击,添加令牌对抗CSRF,限制文件上传类型和大小以防止恶意文件,避免原生序列化并确保数据完整性。及时更新和修复漏洞是关键。程序员应遵循安全编程规范,保障系统安全。
|
13天前
|
Java Shell
Java 21颠覆传统:未命名类与实例Main方法的编码变革
Java 21颠覆传统:未命名类与实例Main方法的编码变革
13 0
|
13天前
|
Java
Java 15 神秘登场:隐藏类解析未知领域
Java 15 神秘登场:隐藏类解析未知领域
17 0
|
15天前
|
安全 Java
append在Java中是哪个类下的方法
append在Java中是哪个类下的方法
23 9