- java.lang.Object
-
- java.security.Permission
-
- java.security.BasicPermission
-
- java.util.PropertyPermission
-
- 实现的所有接口
-
Serializable
,Guard
public final class PropertyPermission extends BasicPermission
此类用于属性权限。名称是属性的名称(“java.home”,“os.name”等)。 命名约定遵循分层属性命名约定。 此外,星号可能出现在名称的末尾,在“。”之后,或单独出现,以表示通配符匹配。 例如:“java。*”和“*”表示通配符匹配,而“* java”和“a * b”表示不匹配。
要授予的操作将以包含一个或多个逗号分隔关键字列表的字符串形式传递给构造函数。 可能的关键字是“读”和“写”。 它们的含义定义如下:
- 读
-
阅读许可。
允许
System.getProperty
。 - 写
-
写权限。
允许
System.setProperty
被调用。
在处理之前,actions字符串将转换为小写。
在授予访问某些系统属性的代码权限之前,应该小心。 例如,授予访问“java.home”系统属性的权限可能会提供有关系统环境(Java安装目录)的潜在恶意代码敏感信息。 此外,授予访问“user.name”和“user.home”系统属性的权限可能会提供有关用户环境(用户的帐户名和主目录)的潜在恶意代码敏感信息。
- 从以下版本开始:
- 1.2
- 另请参见:
-
BasicPermission
,Permission
,Permissions
,PermissionCollection
,SecurityManager
-
-
构造方法摘要
构造方法 构造器 描述 PropertyPermission(String name, String actions)
创建具有指定名称的新PropertyPermission对象。
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 boolean
equals(Object obj)
检查两个PropertyPermission对象是否相等。String
getActions()
返回操作的“规范字符串表示形式”。int
hashCode()
返回此对象的哈希码值。boolean
implies(Permission p)
检查此PropertyPermission对象是否“隐含”指定的权限。PermissionCollection
newPermissionCollection()
返回用于存储PropertyPermission对象的新PermissionCollection对象。-
声明方法的类 java.security.Permission
checkGuard, getName, toString
-
-
-
-
构造方法详细信息
-
PropertyPermission
public PropertyPermission(String name, String actions)
创建具有指定名称的新PropertyPermission对象。 名称是系统属性的名称,而操作包含以逗号分隔的列表,列出了在属性上授予的所需操作。 可能的操作是“读取”和“写入”。- 参数
-
name
- PropertyPermission的名称。 -
actions
- 操作字符串。 - 异常
-
NullPointerException
- 如果name
是null
。 -
IllegalArgumentException
- 如果name
为空或actions
无效。
-
-
方法详细信息
-
implies
public boolean implies(Permission p)
检查此PropertyPermission对象是否“隐含”指定的权限。更具体地说,如果满足以下条件,则此方
- p是PropertyPermission的一个实例,
- p的动作是该对象动作的一个子集,并且
- p的名称隐含在此对象的名称中。 例如,“java。*”表示“java.home”。
- 重写:
-
implies
在类BasicPermission
- 参数
-
p
- 要检查的权限。 - 结果
- 如果此对象隐含指定的权限,则返回true,否则返回false。
-
equals
public boolean equals(Object obj)
检查两个PropertyPermission对象是否相等。 检查obj是否为PropertyPermission,并且具有与此对象相同的名称和操作。- 重写:
-
equals
在类BasicPermission
- 参数
-
obj
- 我们正在测试与此对象相等的对象。 - 结果
- 如果obj是PropertyPermission,并且与此PropertyPermission对象具有相同的名称和操作,则为true。
- 另请参见:
-
Object.hashCode()
,HashMap
-
hashCode
public int hashCode()
返回此对象的哈希码值。 使用的哈希码是此权限名称的哈希码,即getName().hashCode()
,其中getName
来自权限超类。- 重写:
-
hashCode
在类BasicPermission
- 结果
- 此对象的哈希码值。
- 另请参见:
-
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
getActions
public String getActions()
返回操作的“规范字符串表示形式”。 也就是说,此方法始终按以下顺序返回当前操作:read,write。 例如,如果此PropertyPermission对象允许写入和读取操作,则对getActions
的调用将返回字符串“read,write”。- 重写:
-
getActions
在类BasicPermission
- 结果
- 行为的规范字符串表示。
-
newPermissionCollection
public PermissionCollection newPermissionCollection()
返回用于存储PropertyPermission对象的新PermissionCollection对象。- 重写:
-
newPermissionCollection
在类BasicPermission
- 结果
- 一个适合存储PropertyPermissions的新PermissionCollection对象。
-
-