所有类
java.io
类 SerializablePermission
java.lang.Object
java.security.Permission
java.security.BasicPermission
java.io.SerializablePermission
-
所有已实现的接口:
-
Serializable, Guard
-
public final class SerializablePermission
- extends BasicPermission
此类用于可序列化权限。SerializablePermission 包含一个名称(也称为“目标名称”),但没有动作列表;可以使用,也可以不使用指定权限。
目标名称是可序列化权限的名称(参见下面内容)。
下表列出了所有可能的 SerializablePermission 目标名称,并描述了每个名称允许何种权限,还讨论了授权代码权限的风险。
权限目标名称 |
允许的权限 |
允许此权限所带来的风险 |
enableSubclassImplementation |
ObjectOutputStream 或 ObjectInputStream 的子类实现,可分别重写对象的默认序列化或反序列化 |
代码可以使用此实现以恶意方式序列化或反序列化类。例如,在序列化过程中,恶意代码可以使用此实现以易于攻击者访问的方式有目的地存储保密的私有字段数据。同样,在反序列化过程中,它可以反序列化一个类,并将其所有私有字段归零。 |
enableSubstitution |
在序列化或反序列化过程中用一个对象替代另一对象 |
这可能存在危险,因为恶意代码可以将实际对象替换为具有错误或恶意数据的对象。 |
-
从以下版本开始:
-
1.2
-
另请参见:
-
BasicPermission
, Permission
, Permissions
, PermissionCollection
, SecurityManager
, 序列化表格
SerializablePermission
public SerializablePermission(String name)
-
创建具有指定名称的新 SerializablePermission。该名称是 SerializablePermission 的符号名,如“enableSubstitution”等。
-
参数:
-
name
- SerializablePermission 的名称。
SerializablePermission
public SerializablePermission(String name,
String actions)
-
创建具有指定名称的新 SerializablePermission 对象。此名称是 SerializablePermission 的符号名,而目前不使用动作 String,该字符串应该为 null。
-
参数:
-
name
- SerializablePermission 的名称。
-
actions
- 目前不使用而且必须设置为 null
所有类