java.lang.Object java.security.Permission java.security.BasicPermission java.io.SerializablePermission
public final class SerializablePermission
此类用于可序列化权限。SerializablePermission 包含一个名称(也称为“目标名称”),但没有动作列表;可以使用,也可以不使用指定权限。
目标名称是可序列化权限的名称(参见下面内容)。
下表列出了所有可能的 SerializablePermission 目标名称,并描述了每个名称允许何种权限,还讨论了授权代码权限的风险。
权限目标名称 | 允许的权限 | 允许此权限所带来的风险 |
---|---|---|
enableSubclassImplementation | ObjectOutputStream 或 ObjectInputStream 的子类实现,可分别重写对象的默认序列化或反序列化 | 代码可以使用此实现以恶意方式序列化或反序列化类。例如,在序列化过程中,恶意代码可以使用此实现以易于攻击者访问的方式有目的地存储保密的私有字段数据。同样,在反序列化过程中,它可以反序列化一个类,并将其所有私有字段归零。 |
enableSubstitution | 在序列化或反序列化过程中用一个对象替代另一对象 | 这可能存在危险,因为恶意代码可以将实际对象替换为具有错误或恶意数据的对象。 |
BasicPermission
,
Permission
,
Permissions
,
PermissionCollection
,
SecurityManager
,
序列化表格
构造方法摘要 | |
---|---|
SerializablePermission(String name) 创建具有指定名称的新 SerializablePermission。 |
|
SerializablePermission(String name, String actions) 创建具有指定名称的新 SerializablePermission 对象。 |
方法摘要 |
---|
从类 java.security.BasicPermission 继承的方法 |
---|
equals, getActions, hashCode, implies, newPermissionCollection |
从类 java.security.Permission 继承的方法 |
---|
checkGuard, getName, toString |
从类 java.lang.Object 继承的方法 |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
public SerializablePermission(String name)
name
- SerializablePermission 的名称。
NullPointerException
- 如果
name
为
null
。
IllegalArgumentException
- 如果
name
为空。
public SerializablePermission(String name, String actions)
name
- SerializablePermission 的名称。
actions
- 目前不使用而且必须设置为 null
NullPointerException
- 如果
name
为
null
。
IllegalArgumentException
- 如果
name
为空。