public final class PropertyPermission extends BasicPermission
名称是属性的名称(“java.home”,“os.name”等)。 命名约定遵循层次化属性命名约定。 此外,星号可能会出现在名称的末尾,遵循“。”或本身表示通配符匹配。 例如:“java。*”和“*”表示通配符匹配,而“* java”和“a * b”则不表示。
要授予的操作将以包含一个或多个以逗号分隔的关键字的列表的字符串的形式传递给构造函数。 可能的关键字是“读”和“写”。 其含义定义如下:
System.getProperty
。
System.setProperty
。
操作字符串在处理之前转换为小写。
在授予访问某些系统属性的代码权限之前,请注意。 例如,授予访问“java.home”系统属性的权限提供了有关系统环境(Java安装目录)的恶意代码敏感信息。 此外,授予访问“user.name”和“user.home”系统属性的权限提供了有关用户环境(用户的帐户名称和主目录)的恶意代码敏感信息。
BasicPermission
, Permission
, Permissions
, PermissionCollection
, SecurityManager
Constructor and Description |
---|
PropertyPermission(String name, String actions)
创建一个具有指定名称的新PropertyPermission对象。
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj)
检查两个PropertyPermission对象是否相等。
|
String |
getActions()
返回动作的“规范字符串表示”。
|
int |
hashCode()
返回此对象的哈希码值。
|
boolean |
implies(Permission p)
检查此PropertyPermission对象是否“暗示”指定的权限。
|
PermissionCollection |
newPermissionCollection()
返回一个用于存储PropertyPermission对象的新的PermissionCollection对象。
|
checkGuard, getName, toString
public PropertyPermission(String name, String actions)
name
-
name
的名称。
actions
- 操作字符串。
NullPointerException
- 如果
name
是
null
。
IllegalArgumentException
- 如果
name
为空或
actions
无效。
public boolean implies(Permission p)
更具体地说,这个方法返回true:
implies
类
BasicPermission
p
- 允许检查。
public boolean equals(Object obj)
equals
在类别
BasicPermission
obj
- 我们正在测试与此对象相等的对象。
Object.hashCode()
, HashMap
public int hashCode()
getName().hashCode()
,其中getName
来自Permission超类。
hashCode
在
BasicPermission
Object.equals(java.lang.Object)
,
System.identityHashCode(java.lang.Object)
public String getActions()
getActions
将返回字符串“读取,写入”。
getActions
在类别
BasicPermission
public PermissionCollection newPermissionCollection()
newPermissionCollection
在类别
BasicPermission